Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
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
Archives
Today
Total
관리 메뉴

Code Habit

리눅스 크론탭( Linux Crontab) 본문

카테고리 없음

리눅스 크론탭( Linux Crontab)

코드베어 2020. 12. 6. 12:35

리눅스 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