-
크론잡(cronJob)의 작업 시간에 대해서카테고리 없음 2022. 3. 30. 23:42
크론잡(Cron Job)은 리눅스 및 유닉스 계열 운영체제에서 특정 시간 간격마다 자동으로 명령어나 스크립트를 실행하기 위해 사용되는 스케줄링 도구이다. 크론탭(Crontab) 파일에 작업을 등록하면 크론 데몬이 이를 해석하고 일정에 맞춰 작업을 수행한다. 크론잡의 작업 시간이 어떻게 설정되고 동작하는지에 대해 알아보자.
크론식 (Cron Expression)
크론식은 5개의 필드로 구성되며, 각 필드는 다음과 같은 의미를 가진다:
- 분 (Minutes): 0부터 59까지
- 시 (Hours): 0부터 23까지
- 일 (Day of Month): 1부터 31까지
- 월 (Month): 1부터 12까지
- 요일 (Day of Week): 0부터 7까지 (0과 7은 일요일)
예를 들어, */5 * * * *라는 크론식은 매 5분마다 작업을 실행하도록 설정된 것이다. 이 식은 각 필드를 다음과 같이 해석할 수 있다:
- */5: 매 5분마다
- *: 매 시간
- *: 매일
- *: 매달
- *: 매 요일
작업 시간 설정
크론잡의 실행 시간이 어떻게 결정되는지 몇 가지 예를 통해 살펴보겠다.
* /5 * * * *
매 5분마다 실행
- 크론식을 */5 * * * *로 설정하면, 작업은 매 5분마다 실행된다. 예를 들어, 현재 시간이 12:03이라면 첫 실행은 12:05에 발생한다. 이후로는 12:10, 12:15, 12:20 등 매 5분마다 실행된다.
0 * * * *
매 시간마다 실행
- 크론식을 0 * * * *로 설정하면, 작업은 매 정각(00분)에 실행된다. 예를 들어, 현재 시간이 2:57이라면 첫 실행은 3:00에 발생한다. 이후로는 4:00, 5:00, 6:00 등 매 시간 정각마다 실행된다.
0 3 * * *
매일 특정 시간에 실행
- 크론식을 0 3 * * *로 설정하면, 작업은 매일 오전 3시에 실행된다. 예를 들어, 현재 시간이 오후 2:00이라면 첫 실행은 다음 날 오전 3:00에 발생한다. 이후로는 매일 오전 3:00에 실행된다.
0 0 1 * *
매달 특정 날짜에 실행
- 크론식을 0 0 1 * *로 설정하면, 작업은 매달 1일 자정에 실행된다. 예를 들어, 현재 날짜가 3월 15일이라면 첫 실행은 4월 1일 0:00에 발생한다. 이후로는 매달 1일 0:00에 실행된다.
크론잡 설정 예시
크론잡을 설정하려면 터미널에서 crontab -e 명령어를 입력하여 크론탭 파일을 편집하면 된다. 예를 들어, 매일 오전 7시에 스크립트를 실행하려면 다음과 같이 설정한다:
0 7 * * * /path/to/script.sh
이 설정은 매일 오전 7시에 /path/to/script.sh 스크립트를 실행한다는 의미이다. 크론탭 파일을 저장하고 종료하면 크론잡이 등록된다.
크론잡은 정기적으로 실행해야 하는 작업을 자동화하는 데 매우 유용한 도구이다. 크론식을 사용하면 원하는 시간 간격으로 작업을 설정할 수 있다. 매 5분마다, 매 시간마다, 매일 특정 시간에, 매달 특정 날짜에 실행되도록 설정할 수 있으며, 이를 통해 효율적으로 시스템 관리 및 자동화 작업을 수행할 수 있다. 크론잡을 설정할 때는 크론식의 각 필드의 의미를 정확히 이해하고 활용하는 것이 중요하다.