====== cron ====== 미리 저장한 작업을 일정 기간마다 실행되게끔 해주는 작업이다. crond라는 데몬과 직접적인 관련이 있다. ''/etc/crontab''을 편집하여 사용한다. crontab 명령어는 ''/usr/bin/crontab''에 위치한다. ===== 형식 ===== 다음은 라즈비안에 등록된 crontab 내용 중 일부이다. # m h dom mon dow user command 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 위에서 볼 수 있듯이 형식은 다음과 같다. 분 | 시간 | 날짜 | 달 | 요일 | 사용자 | 명령 입력할 수 있는 값은 다음과 같다. ^ 분 | 00 ~ 59 | ^ 시간 | 00 ~ 23 | ^ 날짜 | 00 ~ 31 | ^ 달 | 1 ~ 12 | ^ 요일 | 0 ~ 7 (0 = 일요일) | 그 외 다음의 기호들을 사용할 수 있다. ^ %%*%% | everytime | ^ - | 해당 시간 사이 \\ 예) 시간 항목에 1-3 이면 1시에서 3시 사이 | ^ , | 구분 \\ 예) 시간 항목에 1,3 이면 1시, 3시 | ^ / | 뒤에 오는 단위별로 매번 \\ 예) 분에 %%*/2%% 인 경우 2분 단위로 실행 | ===== 사용 예 ===== ==== 특정 시간에 서버 종료 ==== 다음은 매주 월요일 새벽 1시에 서버를 종료한다. 00 1 * * 1 root shutdown -h now ==== 특정 시간에 스크립트 실행 ==== 스크립트를 실행할 수 있는 권한이 있으면 다음과 같이 스크립트를 실행할 수 있다. 0 8 * * * root sh /root/backup.sh ===== 유의 사항 ===== * ''/etc/crontab''의 권한은 644이기 때문에 일반 사용자도 읽을 수 있다. 그러므로 비밀번호가 포함된 명령은 넣지 않거나 crontab의 권한을 변경해준다. * crontab 내용을 변경하면 crond가 자동으로 reload한다.