Crontab 설정으로 스크립트 스케쥴 설정하기

crontab

unix 계열 운영체제에서 반복되는 작업을 수행시키기 위해 crontab을 이용하여 스케쥴을 등록시켜두고 설정한 시간에 맞추어 반복작업을 시킬 수 있다.

명령어 crontab -l을 통하여 현재 스케쥴 등록 리스트를 볼 수 있으며
crontab -e를 통해 스케쥴 작업 목록을 수정 및 등록 할 수 있다.

crontab 반복 시간 설정 및 보는법

기본적으로 crontab 등록형식은

* * * * * 명령어

의 형식을 띈다. 이는 앞부터 분/시/일/월/요일을 나타내며 특정숫자를 이용해 반복작업 시점을 등록하게된다.

example

  • * * * * * 1분마다 실행
  • 30 * * * * 매시간 30분마다 실행
  • 30 1 * * * 매일 1시30분마다 실행
  • 30 1 10 * * 매월 10일 1시 30분마다 실행
  • 30 1 10 1 * 매년 1월 10일 1시 30분마다 실행
  • 30 1 * * 1 매주 월요일 1시 30분마다 실행 (0:일, 1:월, 2:화, 3:수, 4:목, 5:금, 6:토)

crontab을 이용하여 서버시간 동기화

시간설정을 한지 오래된 서버의 경우 서버시간이 정확히 맞지 않는경우가 있다. 정확한 시간등록이 중요한 서버의 경우 큰 문제가 발생 할 수 있으므로 스케쥴 작업에 등록하여 매일 자동으로 시간을 동기화 시켜준다.

0 0 * * * rdate -s time.bora.net

매일 0시 0분 정각에 time.bora.net 시간과 동기화 시켜준다.