Linux/Linux 연습

[ Linux ] Crontab 설정 방법.

hakstroy 2024. 11. 12. 15:26

 

 

※ crontab(크론탭)이란 ?

 : 리눅스/유닉스 시스템에서 특정 작업을 수행하는 daemon(데몬)인 cron(크론)을 원하는 때에 작업을 수행하도록 설정하는 작업이다.

 

 

※ crontab(크론탭) 명령어 옵션

  • -e : 등록, 편집, 수정 등을 수행할 수 있고 최초로 사용 시 편집기를 선택할 수 있다.
  • -d : 등록된 크론탭을 삭제한다.
  • -I : 등록된 크론탭 목록을 출력한다.
  • -r : 현재 사용자가 등록한 전체 크론탭을 삭제한다.

 

※ crontab(크론탭) 설정 형식

ex) * * * * * timeout 12000 test.sh

-- > 왼쪽순부터 설명.

  • 분(0~59)을 설정합니다. ( *로 표기시 매분이라는 의미)
  • 시간(0~23)을 설정합니다. ( *로 표기시 매시간이라는 의미)
  • 일(1~31)을 설정합니다. ( *로 표기시 매일이라는 의미)
  • 월(1~12)을 설정합니다. ( *로 표기시 매월이라는 의미)
  • 주(0~6)을 설정합니다. ( *로 표기시 매주라는 의미 -- 0은 일요일, 6은 토요일, 1=월, 2=화, 3=수, 4=목, 5=금)
  • test.sh는 실행할 파일 or 명령어입니다.
  • timeout(생략 가능)은 실행 후 12000초 뒤에 중지하라는 의미.
  • # 은 주석을 의미

ex) * * * * * /home/bin/back_db.sh --> 매분 실행

ex) 30 5 * * 1 /home/bin/ back_db.sh --> 매주 월요일 5시 30분에 실행 (오전:5 , 오후: 17) 표현

ex) # ---------주석입니다-------------

 

 

 

※ crontab(크론탭) 재실행 유무

 : 재실행 명령어 - service cron restart ..(요즘 보면 재실행을 굳이 안 해도 된다고는 한다..)

-- cron 재실행은 신중해야하니 잘 알아보시고 하시길...

 

 

※ crontab(크론탭) logging 

 : cat /var/log/cron - 로그 위치

 

 

 

※ crontab(크론탭) 사용 시 주의 사항

 : cron은 환경 변수를 가지지 않은 채로 실행된다고 한다. 그래서 환경 변수를 사용할 경우, 각 쉘 프로그램에서 따로 설정해주어야 한다. 만약 작성한 쉘 스크립트 파일을 수동으로 실행 시켰을 때는 잘 동작되지만 크론탭으로 실행 시켰을 때 정상적으로 동작하지 않았다면 환경 변수를 제대로 설정하였는지 확인해 본다.

추가로 환경변수는 터미널에서 echo $PATH 를 입력하면 확인할 수 있다.