티스토리 뷰
cron .crontab
주기적으로 반복되는 일을 자동적으로 실행될수 있도록 설정해놓는 것을 cron이라고 한다.(데몬)
이 일정관리 파일에는 명령이 수행 될 시간. 수행할 로그인명 등이 포함,
시스템에 따라 /usr/lib/crontab , /etc/crontab 파일이 있으며 crontab 디렉토리가 따로 존재할수도 있음
옵션
crontab -e crontab 파일을 수정하거나, 새로 만든다.
crontab -l crontab 파일 리스트를 보여준다.
crontab -r(or -d) crontab 파일을 삭제한다.
crontab -v crontab 파일의 최근 수정한 정보를 보여준다. (This option is only available on a few systems.)
/etc/crontab
시간별, 일별, 주별, 월별 로 호출하는 디렉토리를 보여줌 아래는 내용
분 | 시간 | 날짜 | 달 | 요일 | 사용자 | 명령 |
* * * * * (*) command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
- /etc/cron.hourly : 매시마다 수행될 내용들 수행함.
- /etc/cron.daily : 매일 1회 수행될 내용들 수행함.
- /etc/cron.weekly : 매주 1회 수행될 내용들 수행함.
- /etc/cron.monthly : 매월 1회 수행될 내용들 수행함.
- /var/spool/cron :디렉토리에 있는 파일들을 읽어들임
- /var/log/cron :cron 로그파일에 실행기록
의미를 파악해보면...
분,시,일,월,요일,권한,실행 명령 순으로 되어있음...
/etc/cron.hourly/ 디렉토리에 실행이 가능한 파일을 넣어 놓는다면 매시간 01 분마다 실행될 것입니다.
다른 행도 마찬가지다. 단3번째 행에서 요일 부분에 요일 부분에 써있는 0은 일요일을 의미
0~6 까지 일요일~토요일 을 의미 하게 되는것입니다.
각각의 필드는 그 시간들을 무시하고자 할때 *로 표시하게 된다. 그리고 하나의 필드에 중복된 내용을 기재하고자 하면 콤마(,)로 구분하면 된다. 연속된 내용을
기록하고자 하면 하이픈(-)을 이용하여 기간을 나타낸다. 또한 슬래쉬(/)를 사용한 내용도 있는데 이는 시간의 경우에 23-7/2라면 23시부터 07시까지 매 2시간마다
라는 의미를 가지고 있다. 시간필드에서 */2라면 매 2시간마다라고 해석하면 된다.
cron 데몬의 실행과 종료
- 실행 : /etc/rc.d/init.d/crond start
- 종료 : /etc/rc.d/init.d/crond stop
- 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 시스템 실행 흐름도
전원on -> init데몬 -> crond 데몬 실행 -> crontab파일 읽음,cron 로그파일에 실행기록
--퍼옴---수퍼유저 코리아
- 모든 엔트리 필드는 공백으로 구분된다.
- 한 줄당 하나의 명령 (두줄로 나눠서 표시할 수 없음)
- # 으로 시작하는 줄은 실행하지 않는다.
- 3,5,7와 같이 콤마(,)로 구분하여 여러 시간대를 지정할 수 있다.
- 2-10와 같이 하이픈(-)으로 시간 범위도 지정할 수 있다.
- 2-10/3와 같이 하이픈(-)으로 시간 범위를 슬래쉬(/)로 시간 간격을 지정할 수 있다(2~10시까
[출처] cron.crontab|작성자 나는최고다
'Study > Language >' 카테고리의 다른 글
자바의 추상클래스(Abstract class)와 인터페이스(interface class) (1) | 2012.10.09 |
---|---|
Thread - Multi Thread Vs. Multi Process (0) | 2011.09.16 |
C++을 위한 XML 파서의 선택 (1) | 2010.12.22 |
주석의 종류 (0) | 2010.11.24 |
해쉬 테이블 소스 ( GNU ) (0) | 2010.08.13 |
- Total
- Today
- Yesterday
- gdgssu
- 릴레이대회본선
- yjaeseok
- 하쭈서쭈
- 안드로이드
- 리눅스 커널 2.6 구조와 원리
- GDG SSU
- WatchFaceHack
- 서버개발자
- 리눅스 커널 2.6
- GDG
- Jake Yoon
- 윤재석
- 해커톤
- 리눅스
- 숭실대
- AndroidWear
- Developing on AWS
- watchface
- 소설네트워크2
- 창조경제혁신센터
- jaeseokyoon
- Linux
- 그래비트랙스
- 창의과학교구
- 리눅스2.6
- gdg watchfacehack
- 핸즈온머신러닝
- 안드로이드폰
- jakeyoon
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |