리눅스 - Crontab

코린이·2024년 11월 9일

Linux

목록 보기
4/27

리눅스 - Crontab

리눅스에서 Crontab은 사용자가 지정한 시간에 정기적으로 특정 작업을 자동 실행하도록 하는 예약 도구이다. (스케줄러 개념과 비슷)

시스템 관리 작업, 백업, 로그 정리 등과 같은 반복 작업을 설정하는 데 주로 사용되며, 각 사용자(User)에게 할당된 crontab 파일은 사용자가 관리할 수 있다.

  • root 계정은 모든 crontab 파일을 관리할 수 있다.

파일에 작성된 일정에 따라 cron 데몬이 작업을 자동으로 실행한다.


리눅스 - Crontab 명령어

- 크론탭을 편집할 수 있는 명령어
crontab -e

- 크론탭의 내용을 출력해 주는 명령어 (cat 명령어와 비슷)
crontab -l

- 크론탭을 삭제하는 명령어
crontab -r

- 특정 사용자에의 크론탭 관리 (다른 사용자의 크론탭 권한이 있을 때 사용 가능)
crontab -u <유저명> -e

Crontab 주기 설정

크론탭은 아래와 같은 형태로 실행 주기를 설정할 수 있다.
크론탭에서 시간은 아스테리스크 특수문자 *을 사용하여 표현한다.

총 5개의 *을 사용하며 각각 분, 시, 일, 월, 요일 순서로 작성해야 한다.

*(분)   *(시)   *(일)   *(월)   *(요일)

주기값 범위

분 : 0~59
시 : 0~23
일 : 1~31
월 : 1~12
요일 : 0~7

요일에서 0과 7은 일요일을 의미한다.

  • 0~6은 일요일~토요일을 의미하며,
  • 1~7은 월요일~일요일을 의미한다.

실행 예시

  • 매분 실행
    * * * * * <실행 파일 or 코드>
  • 매주 금요일 오후 6시에 실행
    0 18 * * 5 <실행 파일 or 코드>
  • 0분, 20분, 40분마다 반복 실행 (매시간마다 3번 실행)
    0, 20, 40 * * * * <실행 파일 or 코드>
  • 0분부터 30분까지 범위 지정 후 매분마다 실행 (매시간마다 31번 실행)
    0-30 * * * * <실행 파일 or 코드>
  • 10분 마다 실행
    */10 * * * * <실행 파일 or 코드>

0개의 댓글