Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Close
- tcp
- File
- install
- mutex
- Python
- 리뷰
- GO 언어
- Golang
- json
- go
- 영화
- FOR
- package
- C
- bitcoin
- write
- Sync
- window
- Linux
- windows
- 책
- range
- API
- go언어
- c++
- channel
- JavaScript
- Callback
- http
Archives
- Today
- Total
Code Habit
리눅스 크론탭( Linux Crontab) 본문
리눅스 OS 환경에서 서버를 운영한다면 서버가 내려갔을 때 재시작 해주는 기능이 필요하다. 이를 위해 리눅스에서는 크론탭( Crontab )을 사용할 수 있다. 크론탭은 특정한 서비스를 위해 백그라운데이서 계속 실행되는 프로세스로 일반적으로 쉘이 종료될 때 같이 종료되나, 강제 종료 하지 않는 이상 계속 상주한다. 마치 윈도우의 서비스( service )와 비슷하다.
크론탭은 다음과 같이 사용할 수 있다.
1. 크론탭 명령어
- crontab -l : 현재 크론탭에 어떤 내용이 있는지 확인.
- crontab -e : 크론탭 설정 모드 진입. vi로 편집.
2. 크론탭 시간(주기) 설정
*(분) *(시간) *(일) *(월) *(요일)
- 매분 실행
매분 test.sh 실행
* * * * * /home/script/test.sh
- 특정 시간 실행
# 매주 월요일 오전 4시 10분에 test.sh 를 실행
10 4 * * 1 /home/script/test.sh
- 반복 실행
# 매일 매시간 0분, 20분, 40분에 test.sh 를 실행
0,20,40 * * * * /home/script/test.sh
- 범위 실행
# 매일 1시 0분부터 30분까지 매분 tesh.sh 를 실행
0-30 1 * * * /home/script/test.sh
- 간격 실행
# 매 10분마다 test.sh 를 실행
*/10 * * * * /home/script/test.sh
3. 크론탭 로깅
* * * * * /home/script/test.sh > /home/script/test.log 2>&1
위처럼 쓰면 매분마다 test.log 파일이 갱신되어 크론 작업 내용이 어떻게 되었는가 로깅한다.
'2>&1' 의 의미는 '2:표준에러'를 '1:표준출력'으로 '>:리다이렉트'하라는 의미이다. 1앞에 &을 제거하면 1을 파일명으로 인식하니 주의하자.
참조 : jdm.kr/blog/2