RHCSA 준비/03. 작업 스케줄링

3.2 주기적인 작업 예약

Jaden Park 2021. 5. 24. 17:53

주기적인 작업은 '매 주 토요일 마다' 또는 '매 월 첫 번째 수요일' 과 같이 특정 주기마다 실행되는 작업을 의미.

주기적인 작업을 예약할 때는 crontab 명령.

crond 데몬

  • crond 데몬은 crontab 명령을 사용하여 예약한 주기적인 작업을 실행
  • 사용자가 예약한 작업들은 /var/spool/cron 디렉토리에 각 사용자 이름으로 생성된 파일에 저장
[root@test1 ~]# ls -l /var/spool/cron/
total 8
-rw-------. 1 root root 32 May 24 11:22 root
-rw-------. 1 user user  1 May 24 11:21 user

crontab 명령 사용

crontab -e 명령을 사용하여 작업 예약

[root@test1 ~]# crontab -e

[분] [시] [일] [월] [요일] [명령어]

#월 1(Feb)~12(Dec)
#요일 0(Sun) 1(Mon) 2(Tue) ... 6(Sat) 7(Sun)
예시 설명
* * * * * echo “1분 마다”
0 * * * * echo “1시간 마다”
30 7 * * 1 echo “매주 월요일 7:30분”
0 0 25 12 * echo “매년 크리스마스 마다”
0 9-18 * * * echo “9시부터 18시 까지”
0 9,12,18 * * * echo “아침점심저녁으로만”
*/3 * * * * echo “3으로 나눠 떨어질 때(매 3분마다) (0분 3분 6분 9분…)”
메타 문자 설명
* 조건에 대해 무조건 참(True)을 의미
- 범위를 지정할 수 있음
, 다수의 값을 지정할 수 있음
/ 조건에 대한 주기를 지정할 수 있음

crontab -l

  • 목록 확인
[root@test1 ~]# crontab -l
*/10 * * * *    user    echo hi

crontab -r

  • 예약된 모든 작업 제거