Crontab 사용법 / 설정법

서버관련/Command2014.08.20 14:30HanQ eNFO

Crontab 사용법 / 설정법

crontab 이란?

 Crontab 이란 Linux에서 자동 스케쥴링 프로그램이다, 특정시간대에 특정 명령어 혹은 스크립트를 반복적으로 실행 할수 있다

 

MIN HOUR DOM MON DOW CMD

필드 명세 허용 값
MIN 0~59
HOUR 시간 0~23
DOM 날짜 1-31
MON 1-12
DOW 0-6
CMD 명령어 실행 가능 한 모든 명령어

*추가* -  요일은 0:일요일 , 1:월 , 2:화 , 3:수 , 4:목 , 5:금 , 6:토

1. 다음 시간 6월 10일 오전 8시 30분 을 cron 명령어에 맞게 작성해보자.

30 08 10 06 * /home/script/backup
  • 30: 30분
  • 08: 오전 8시 <24시제>
  • 10: 10일
  • 06: 6월
  • *: 매주

2. 매일 하루 두 번 증분 백업을 하자.

00 11,16 * * * /home/script/incremental-backup
  • 00: 0분 (정각)
  • 11,16 - 오전 11시 / 오후 4시
  • *: 매일
  • *: 매달
  • *: 매주

3. 특정 시간대에 작업하기

00 09-18 ** 1-5 /home/check-db-status
  • 00: 0분 (정각)
  • 09-18: 오전 9, 10, 11, 12시 / 오후 1, 2, 3, 4, 5, 6시 마다 작업
  • *: 매일
  • *: 매달
  • 1-5: 월, 화, 수, 목, 금 (주중)

4. crontab 작업 목록 보기 (명령어)

$ crontab -l
@hourly /home/script/hourly-script
00 09-18 ** 1-5 /home/check-db-status

$ crontab -u foo -l
no crontab for foo

$ su
# crontab -l
no crontab for root

 

5. crontab 목록 수정

목록 수정을 vi/vim으로 편집하려면 변수를 선언해줘야 한다. export VISUAL=vim

$ crontab -e
$ crontab -u foo -e

6. 매분마다 작업하기

* * * * * CMD

7. 10분 마다 작업하기

*/10 * * * * /home/script/check-disk-space
0-10/2 * * * * /home/script/check-db-updates-5times
  • */10의 뜻은 10분 마다
  • 0-10/2의 뜻은 처음 10분 동안 2분 간격으로

8. 키워드 사용

Keyword

키워드 대치 문법
@yearly 0 0 1 1 *
@daily 0 0 * * *
@hourly 0 * * * *
@weekly 0 0 * * 0
@reboot 시스템 시작 시

 

다음은 키워드를 사용해 매일 반복하는 작업 스케줄링 crontab이다.

@daily /home/script/make-log

9. 메일 사용

crontab 수정시 MAILTO를 선언하면 실행 내용을 메일로 받을 수 있다.

MAILTO="xajax@naver.com"

10. 파일을 통한 crontab 설정

파일로 저장해 놓고 다른 시스템에 재 사용 하고 싶다면 다음과 같이 하면 된다.

$ crontab cron-file.txt
$ crontab -l

 

출처 - http://blog.naver.com/wiznux/60202504815

'서버관련 > Command' 카테고리의 다른 글

Crontab 사용법 / 설정법  (0) 2014.08.20
linux iptables 제한 해제  (0) 2013.04.10
linux 텍스트파일 분할  (0) 2012.11.07
일괄 문자 치환(사이트 이전시 유용)  (0) 2011.04.21
Vi editor  (0) 2011.04.21
tar 압축관련  (0) 2011.04.21
블로그 주인 사진AuthoreNFO
자주 잊어먹는것들을 기록해 놓을려고합니다.^^