본문 바로가기
IT 지식정리/운영체제

리눅스 자동실행 관리툴 크론(Cron)

by G. Hong 2018. 12. 8.
728x90
반응형

크론(cron)은 리눅스에서 특정 시간에 반복적으로 자동으로 작업을 수행할 수 있도록 해주는 서비스입니다.

기본적인 설정은 마스터 파일인 /etc/crontab 에서 설정할 수 있습니다.

그 외에도 /var/spool/cron/ 디렉토리에 각각 유저의 crontab 파일이 있습니다.

/etc/cron.*/ 디렉토리에는 각각이 해당하는 스케쥴마다 실행이 되는 스크립트들이 있습니다.

/etc/cron.hourly/ 매 시간 

/etc/cron.daily/ 매일 3:05am~10:55pm

/etc/cron.weekly/ 매주(마지막 실행으로 부터 일주일 뒤) 3:25am~11:10pm

/etc/cron.monthly/ 매달(마지막 실행으로 부터 한달 뒤) 3:45am~11:30pm


crontab은  vi를 통해서 직접 변경을 하여도 되고, # crontab -e 와 같이 명령어를 통해서 수정할 수 도 있습니다.

/etc/crontab을 보시면 아래와 같이 주석으로 설정 방법이 설명이 되어 있습니다.

# Example of job definition:

 .---------------- minute (0 - 59)

 |  .------------- hour (0 - 23)

 |  |  .---------- day of month (1 - 31)

 |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

 |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

 |  |  |  |  |

 0  1  *  *  *  [user-name] [command to be executed]


아래는 몇 가지 예시입니다. 아래와 같이 /etc/crontab 파일에 추가하시면 해당 시간에 실행이 되게 됩니다.

5 0 * * *    /home/oracle/scan_asm_devices.sh : 매일 0시5분마다 해당 스크립트를 실행

30 17 1 * *    mail -s "It's 5:30pm" : 매달 1일 오후 5시30분에 해당 커맨드가 실행

5 4 * * mon    echo "run at 5 after 4 every monday" : 매주 월요일 4시5분에 실행


728x90
반응형