CRON?

Cron?

Cron시스템이란 특정 작업을 정해진 시간에 주기적이고 반복적으로 실행하기 위한 데몬과 그 설정들이다. Cron시스템에는 시스템에서 기본적으로 사용하는 cron설정이 있으며, 이를 시스템크론이라고 함. 또한 cron시스템에는 root나 일반사용자가 자신의 cron설정을 직접하여 사용하는 사용자크론이 있다.


cron에 관한 데몬과 파일들 - cron데몬파일 : /usr/sbin/crond
  • cron데몬의 시작/종료/재시작 : /etc/rc.d/init.d/crond start/stop/restart
  • crond 실행확인 : ps –ef grep crond
  • cron설정파일 : /etc/crontab
  • 시스템크론 설정디렉토리 : /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly
  • 사용자크론 설정파일 : /var/spool/cron/* (사용자계정명과 동일한 파일명으로 존재함.)
  • 사용자크론설정 명령어 : /usr/bin/crontab
  • cron실행내용 기록되는 로그파일 : /var/log/cron *참고 : atd에 의한 수행내역은 /var/log/messages에 기록됨.


Cron 시스템 실행 흐름도

2016-02-26 14;39;36.PNG


Cron의 실행주기 설정형식과 방법

  • 시스템 Cron 설정
1
2
3
4
5
6
7
8
9
10
[root@edu anacron]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly 
  • 사용자 Cron 설정
1
2
3
4
[root@edu anacron]# crontab -l
00 01 * * * su - root /usr/bin/rdate -s time.bora.net && /sbin/hwclock -w
00 03 * * * su - root '/root/backup.sh' >& /dev/null
00 08 * * * su - root '/root/check_of_system.sh' > /root/COS_result 


각 필드의 의미

필드번호 의미
첫번째 “분(minute)”을 의미. 0,1,2,3,,,,59분까지를 각각 설정할 수 있음.
두번째 “시(hour)”를 의미. 0,1,2,3,,,,23시까지를 각각 설정할 수 있음.
세번째 “일(day)을 의미. 1,2,3,,,,31일까지를 각각 설정할 수 있음.
네번째 “월(month)을 의미. 1,2,3,,,,12월까지를 각각 설정할 수 있음.
다섯번째 “요일(weekday)”을 의미. 0,1,2,3,,,,7요일까지를 각각 설정할 수 있음.
(0과 7은 일요일, 1:월요일, 2:화요일, 3:수요일, 4:목요일, 5:금요일, 6:토요일을 각각 의미함.)
여섯번째 실행권한과 실행될 내용을 각각 의미함.