리눅스에서 크론 작업을 생성하고 관리하는 방법


Cron은 범용 및 작업 관련 스크립트를 모두 사용하여 특정 기간, 날짜 및 간격으로 자동화 된 명령을 실행할 수 있으므로 Linux에서 가장 유용한 도구이자 개발자가 선호하는 도구 중 하나입니다. 이 설명을 통해 시스템 관리자가 백업 작업, 디렉토리 정리, 알림 등을 자동화하는 방법을 상상할 수 있습니다.

Cron 작업은 백그라운드에서 실행되며 /etc/crontab 파일과 /etc/cron. *//var/spool/cron/ 디렉토리에 있습니다. cron 파일은 직접 편집하지 않아야하며 각 사용자마다 고유 한 crontab이 있습니다.

그렇다면 어떻게 cron 작업을 만들고 편집해야합니까? crontab 명령. crontab은 cron 작업을 작성, 편집, 설치, 제거 및 나열하는 데 사용하는 방법입니다.

cron 작업을 만들고 편집하는 명령은 동일하고 간단합니다. 그리고 심지어 더 쿨한 것은 새로운 파일을 생성하거나 기존 파일을 편집 한 후에 cron을 재시작 할 필요가 없다는 것입니다.

$ crontab -e

크론 구문

다른 언어와 마찬가지로 cron 을 사용하면 구문을 이해할 때 훨씬 쉽고 두 가지 형식을 알아야합니다.

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

위의 cron 구문에 대한 설명 :

  • 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
  • USERNAME: replace this with your username
  • /path/to/command – The name of the script or command you want to schedule

그게 전부는 아니야. Cron은 필드에 여러 값을 지정할 수있는 연산자 기호 3 개를 사용합니다.

  1. Asterisk (*): specifies all possible values for a field
  2. The comma (,): specifies a list of values
  3. Dash (-): specifies a range of values
  4. Separator (/): specifies a step value

이제 Cron의 구문과 연산자를 알았으므로 cron 예제를 살펴 보겠습니다.

크론 작업 예

cron 명령을 실행하는 첫 번째 단계는 다음 명령으로 crontab을 설치하는 것입니다.

# crontab -e

매일 오전 3시 /root/backup.sh 를 실행하십시오.

0 3 * * * /root/backup.sh

매월 둘째 날 오후 4:30, script.sh 를 실행하십시오.

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

다음 주 중 오후 10시 /scripts/phpscript.php 를 실행하십시오.

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

자정, 오전 2시 및 4시 후 23 분 perlscript.pl 을 실행하십시오.

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

매주 일요일 04:05에 Linux 명령을 실행하십시오.

5 4 * * sun /path/to/linuxcommand

크론 옵션

cron 작업을 나열하십시오.

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

모든 crontab 작업을 삭제하십시오.

# crontab -r

특정 사용자에 대한 크론 작업 삭제.

# crontab -r -u username

Crontab의 문자열

문자열은 반복적 인 작성을 줄임으로써 시간을 절약 할 수 있기 때문에 개발자가 좋아하는 것 중에 있습니다. Cron은 명령을 빨리 생성하는 데 사용할 수있는 특정 문자열을 가지고 있습니다.

  1. @hourly: Run once every hour i.e. “0 * * * *
  2. @midnight: Run once every day i.e. “0 0 * * *
  3. @daily: same as midnight
  4. @weekly: Run once every week, i.e. “0 0 * * 0
  5. @monthly: Run once every month i.e. “0 0 1 * *
  6. @annually: Run once every year i.e. “0 0 1 1 *
  7. @yearly: same as @annually
  8. @reboot: Run once at every startup

예를 들어, 매일 시스템을 백업하는 방법입니다.

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

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

당신은 크론 사용자 중 얼마입니까? 그리고 기사에 기여할 수있는 세부 사항이 있습니까? 토론 상자는 아래와 같습니다.

Crontab의 작동 방식에 대해 충분히 이해하면 이러한 멋진 Crontab 생성기 유틸리티를 사용하여 무료 crontab 회선을 생성 할 수 있습니다.

또한 Cron을 사용하는 방법에 대한 우분투의 기사를 읽을 수 있습니다. 유용하다고 생각되는 자료가 있습니다.