명령어

crontab 사용법

_주야 2012. 6. 19. 10:20

 

daemon이란?

OS에서 백그라운드로 구동되고있는 프로세스 

 

cron 데몬이란?

Job scheduling으로 사용되는 데몬

 

crontab이란?

- 지정된 날짜와 시간에 주기적 작업을 수행하기 위해 cron daemon에 의해 실행되는 명령어

- 각사용자별로 /var/spool/cron/crontabs directory에 cron job을 지정할 수 있음

 


 * crontab 사용법


일반 User레벨에서의 Daemon 설정방법

- 시스템을 처음 Install 하고 나면 User레벨의 Cron은 별도 설정을 해주어야만 등록 가능하다. 

만약 이미 해당파일이 존재한다면 vi 에디터로 수정만 하면 될것이다.

 

crontab 사용 권한

/etc/cron.allow, /etc/cron.deny

/etc/cron.allow에 명시된 사용자는 cron job을 실행할 수 있다. /etc/cron.allow를 먼저 참조한다는 것만 염두에 두면 된다.

/etc/cron.allow에 없는 사용자도 /etc/cron.deny에 없다면, cron job을 실행할 수 있다.

/etc/cron.allow, /etc/cron.deny 두 파일이 존재하지 않으면 슈퍼 유저만 cron job을 수행할 수 있다.

즉, /etc/cron.deny 파일이 존재하고 아무 내용 없이 비어 있다면, 모든 사용자가 cron job을 수행할 수 있다.

 

 

crontab 등록

crontab [스크립트 경로 및 이름]

/home/wasadmin#crontab 0 10 * * * /home/wasadmin/waslog.sh

 

cron table의 각 필드 상세설명

'*' : everytime
'-' : 범위 지정, 예를 들어 시간 필드에 1-3이면 1시와 3시 사이 즉 1시 2시 3시
',' : separator, 예를 들어 시간 필드에 1,3이면 1시와 3시

 

minute(0~59)  hour(0-23)  day(1-31)  month(1-12)  weekday(0-6) command

 

weekday의 요일 필드 : 0(일) 1(월), 2(화), 3(수), 4(목), 5(금), 6(토)

 


crontab 등록확인

옵션 -l :  현재 cron table을 보여 준다.

 

/home/wasadmin#crontab -l
## WAS SystemOut log Manage ##
0 10 * * * /home/wasadmin/waslog.sh 1>/dev/null 2>/dev/null

 

* 파일 등록시 주의 사항
파일 등록시에는 기존에 있던 모든 crontab 내용이 모두 지워지고 파일에 있는 내용으로 덮어 씌여진다.

 

 

crontab 편집

옵션 -e :  현재 cron table을 편집한다.

 

/home/wasadmin#crontab -e
"/tmp/crontabo-3hMa" 2 lines, 91 characters
## WAS SystemOut log Manage ##
30 9 * * * /home/wasadmin/waslog.sh 1>/dev/null 2>/dev/null 

 

 

crontab 삭제

옵션 -r  :  현재 cron table을 삭제한다. 

 

* 삭제시 주의 사항
crontab -r을 통한 삭제시는 해당 user에 등록되어 있는 모든 crontab이 삭제 된다.
한가지를 삭제 할 경우에는 crontab -e를 통해 삭제하길 권장한다.

 

 

'명령어' 카테고리의 다른 글

netstat 명령어  (0) 2012.10.20
find 명령어  (0) 2012.07.10
Archive & Compress  (0) 2011.11.29
vi 명령어 단축키  (0) 2011.11.08
화면 출력 명령어  (0) 2011.10.26