리눅스에서 Cron 작업 생성 및 관리하는 방법

Cron리눅스에서 가장 유용한 도구 중 하나로 개발자들에게 인기가 많습니다. 이는 특정 기간, 날짜 및 간격에 자동 명령을 실행할 수 있도록 일반 목적 및 작업별 스크립트를 사용할 수 있기 때문입니다. 이 설명을 토대로, 시스템 관리자들이 백업 작업, 디렉토리 정리, 알림 등을 자동화하는 데 어떻게 사용하는지 상상할 수 있습니다.

Cron 작업은 백그라운드에서 실행되며 지속적으로 /etc/crontab 파일 및 /etc/cron.*/, /var/spool/cron/ 디렉토리를 확인합니다. 크론 파일은 직접 편집해서는 안 되며 각 사용자마다 고유한 crontab이 있습니다.

그렇다면 크론 작업을 생성하고 편집하는 방법은 무엇일까요? crontab 명령어를 사용합니다. crontab은 크론 작업을 생성, 편집, 설치, 제거 및 목록화하는 데 사용하는 방법입니다.

크론 작업을 생성하고 편집하는 명령어는 동일하고 간단합니다. 더 멋진 점은 새 파일을 생성하거나 기존 파일을 편집한 후에 크론을 다시 시작할 필요가 없다는 것입니다.

$ crontab -e

크론 구문

모든 언어와 마찬가지로, 크론을 다룰 때는 구문을 이해하면 훨씬 쉽습니다. 알아둬야 할 형식은 2가지입니다:

A B C D E USERNAME /path/to/command arg1 arg2
OR
A B C D E USERNAME /root/backup.sh

위의 크론 구문 설명:

  • A: Minutes range: 0 – 59
  • B: Hours range: 0 – 23
  • C: Days range: 0 – 31
  • D: Months range: 0 – 12
  • E: Days of the week range: 0 – 7. Starting from Monday, 0 or 7 represents Sunday
  • 사용자명: 여기에 사용자명을 입력하세요
  • /경로/명령어 – 예약할 스크립트나 명령어의 이름

그게 다가 아닙니다. 크론은 필드에서 여러 값을 지정할 수 있게 해주는 3가지 연산자 기호를 사용합니다:

  1. 별표 (*): 해당 필드의 모든 가능한 값을 지정합니다
  2. 쉼표 (,): 값의 목록을 지정합니다
  3. 대시 (-): 값의 범위를 지정합니다
  4. 분리자 (/): 단계 값을 지정합니다

이제 크론의 구문과 연산자를 알았으니, 몇 가지 크론 예제를 살펴보겠습니다.

크론 작업 예시

크론 명령을 실행하는 첫 번째 단계는 다음 명령을 사용하여 크론탭을 설치하는 것입니다:

# crontab -e

매일 새벽 3시/root/backup.sh를 실행하세요:

0 3 * * * /root/backup.sh

매월 2일 오후 4시 30분script.sh를 실행하세요:

30 16 2 * * /path/to/script.sh

매주 10시/scripts/phpscript.php를 실행하세요:

0 22 * * 1-5 /scripts/phpscript.php

매일 자정 23분, 새벽 2시 및 4시에 perlscript.pl를 실행하세요:

23 0-23/2 * * * /path/to/perlscript.pl

매주 일요일 04:05에 Linux 명령어를 실행하세요:

5 4 * * sun /path/to/linuxcommand

크론 옵션

크론 작업 목록.

# crontab -l
OR
# crontab -u username -l

모든 크론탭 작업을 삭제하십시오.

# crontab -r

특정 사용자의 크론 작업 삭제

# crontab -r -u username

크론탭에서의 문자열

문자열은 개발자들이 좋아하는 것 중 하나입니다. 반복적인 작성을 제거하여 시간을 절약하는 데 도움이 됩니다. Cron에는 명령을 빠르게 만들 수 있는 특정 문자열이 있습니다:

  1. @hourly: 매 시간 한 번 실행 즉, “0 * * * *
  2. @midnight: 매일 한 번 실행 즉, “0 0 * * *
  3. @daily: @midnight와 동일
  4. @weekly: 매주 한 번 실행 즉, “0 0 * * 0
  5. @monthly: 매월 한 번 실행 즉, “0 0 1 * *
  6. @annually: 매년 한 번 실행 즉, “0 0 1 1 *
  7. @yearly: @annually와 동일@annually
  8. @reboot: 부팅 시 한 번 실행

예를 들어, 시스템을 매일 백업하는 방법:

@daily /path/to/backup/script.sh

이 시점에서 Cron을 사용하여 시스템 작업을 생성하고 관리하는 데 필요한 모든 것을 갖추셨습니다. 이제 예약된 명령을 사용하여 여러 환경을 설정하고 유지할 수 있습니다.

크론 사용자로서 얼마나 익숙한가요? 이 글에 기여할 수 있는 세부 정보가 있나요? 논의 상자는 아래에 있습니다.

크론탭이 어떻게 작동하는지 충분히 이해하면 이 멋진 크론탭 생성기 도구를 사용하여 무료로 크론탭 라인을 생성할 수 있습니다.

또한, 크론 사용 방법에 대한 우분투 기사를 읽을 수 있습니다. 여기에서 확인할 수 있습니다. 유용한 자원이 포함되어 있습니다.

Source:
https://www.tecmint.com/create-and-manage-cron-jobs-on-linux/