본문 바로가기

Linux

cron으로 작업 스케쥴 하기기

cron 데몬은 같은 작업을 주기적으로 반복 실행하려는 작업을 스케쥴링 하는 것이다.
매분, 매시, 매일, 매주, 매월, 매요일 단위로 cron데몬에 의해서 작업이 실행되어질 수 있다.

사용형식
crontab [-u user] file
crontab [-u user] [-e | -l | -r]

사용법
crontab -l  : 작업 목록을 보고자 할때
crontab -r  : 작업 명령을 취소하거나 제거하고자 할때

cron 데몬 띄우기
serivce crond restart

편집해 보자
crontab -e

요일은 0~7 까지 사용 (0:일요일,~ 6:토요일)
월요일, 수요일 하고자 할때  1,3
월요일에서 금요일 하고자 할때 1-5


example1] 매주 토요일 12:00에 oracle 계정의 디렉터리를 백업하자.
00 12 * * 6 /home/oracle/backup.sh

example2] 매주 수요일 오전 9:30에 /var/log에 있는 모든 로그 파일을 삭제하라.
30 09 * * 3 rm -f /var/log/*

example3] 2개월 간격으로 새벽 4시에 백업하라.
00 04 * 1-12/2 * /home/oracle/backup.sh

example4] 매일 오전 4시와 12시에 backup.sh 스크립트를 실행하자.
00 04,12 * * * /home/oracle/backup.sh > /dev/null 2>&1

example5] 매일 오전 3시에서 8시까지 매시마다 backup.sh를 실행하라.
00 3-8 * * * backup.sh

example5] 3개월마다 수요일에서 금요일까지 11:30분에 backup.sh를 실행하라
30 11 * 1-12/3 3-5 backup.sh

사용자 제한 하기
vi /etc/cron.allow 에 사용자를 등록해주면, 등록된 사용자에 한해서 cron을 실행할 수 있다.

/etc/crontab