>시스템 튜토리얼 >리눅스 >Linux에서 예약된 작업을 구성하는 방법 알아보기: cron 및 anacron 사용

Linux에서 예약된 작업을 구성하는 방법 알아보기: cron 및 anacron 사용

王林
王林앞으로
2024-01-15 11:33:05966검색
소개 이 글에서는 cron과 anacron을 설명하고 Linux에서 anacron을 설정하는 방법을 보여줍니다. 또한 이 두 도구를 비교해 보겠습니다.

Linux 中怎么设置计划任务:cron 与 anacron

Linux에서 cron 설정

cron - 시스템 백업, 업데이트 등과 같은 예약된 작업을 실행하는 데 사용되는 데몬 프로세스입니다. 서버와 같이 연중무휴로 실행되는 시스템에서 실행되는 예약된 작업에 적합합니다.

명령/스크립트는 crontab 파일에 예약된 cron 작업 스크립트로 작성됩니다. 시스템 기본 cromtab 파일은 /etc/crontab 이지만 각 사용자는 자신만의 cromtab 파일을 만들어 특정 시간에 사용자 정의 명령을 실행할 수도 있습니다.

개인 crontab 파일을 만들려면 다음을 입력하세요.

으아아아

Linux 中怎么设置计划任务:cron 与 anacron

Linux에서 anacron을 설정하는 방법

anacron은 일 단위의 빈도로 명령을 실행하는 데 사용됩니다. cron과 약간 다르게 작동합니다. 머신이 항상 켜져 있지 않다고 가정합니다.

Cron은 랩톱 및 데스크톱 컴퓨터와 같이 연중무휴로 실행되지 않는 컴퓨터에서 매일, 매주 및 매월 예약된 작업을 실행하는 데에도 적합합니다(LCTT 번역: 시간 및 분 단위로 작업을 실행하는 데 적합하지 않음).

한밤중에 cron을 사용하여 매일 실행하고 싶은 예약된 작업(예: 백업 스크립트)이 있다고 가정해 보세요. 어쩌면 잠든 동안 데스크탑/노트북이 종료될 수도 있습니다. 백업 스크립트가 실행되지 않습니다.

그러나 anacron을 사용하면 다음에 데스크톱/노트북을 켤 때 백업 스크립트가 실행되도록 할 수 있습니다.

Linux에서 anacron이 작동하는 방식

anacron 작업은 /etc/anacrontab에 나열되어 있으며 다음 형식을 사용하여 작업을 예약할 수 있습니다(anacron 파일의 주석은 # 숫자로 시작해야 합니다).

으아아아

위 형식에서:

  • 기간 - 일 단위로 지정되는 작업 빈도입니다. 또는 매일, 매주 또는 매월 @daily, @weekly, @monthly으로 지정됩니다. 숫자를 사용할 수도 있습니다: 1 - 매일, 7 - 매주, 30 - 매월 또는 N - 일.
  • delay - 작업을 실행하기 전에 기다려야 하는 시간(분)입니다.
  • job-id - 로그 파일에 기록된 작업의 고유 이름입니다.
  • command - 실행할 명령 또는 셸 스크립트입니다.

예제 파일을 찾아보려면 다음을 입력하세요.

으아아아

실제로 일어난 일은 다음과 같습니다.

  • anacron 会检查任务是否已经在 period 字段指定的时间被被执行了。如果没有,则在等待 delay 字段中指定的分钟数后,执行 command字段中指定的命令。
  • 一旦任务被执行了,它会使用 job-id (时间戳文件名)字段中指定的名称将日期记录在 /var/spool/anacron 目录中的时间戳文件中。

现在让我们看一个例子。这个会每天运行 /home/aaronkilik/bin/backup.sh 脚本:

 @daily    10    example.daily   /bin/bash /home/aaronkilik/bin/backup.sh

当机器在 backup.sh 期望被运行时是关机的,anacron 会在机器开机十分钟之后运行它,而不用再等待 7 天。

这里有两个你应该理解的 anacrontab 文件的重要变量:

  • START_HOURS_RANGE - 这个设置任务开始运行的时间范围(也就是任务只在这几个小时内运行)。
  • RANDOM_DELAY - 这定义添加到用户定义的任务延迟的最大随机延迟(默认为 45)。

这是你的 anacrontab 文件可能看上去的样子。

Anacron – /etc/anacrontab

# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/root
LOGNAME=root
# These replace cron's entries
1       5       cron.daily      run-parts --report /etc/cron.daily
7       10      cron.weekly     run-parts --report /etc/cron.weekly
@monthly        15      cron.monthly    run-parts --report /etc/cron.monthly
@daily    10    example.daily   /bin/bash /home/aaronkilik/bin/backup.sh                                                                      

下面是 cron 以及 anacron 的比较,帮助你理解何时用他们其中一个。

cron anacron
它是守护进程 它不是守护进程
适合服务器 适合桌面/笔记本电脑
可以让你以分钟级运行计划任务 只能让你以天为基础来运行计划任务
关机时不会执行计划任务 如果计划任务到期,机器是关机的,那么它会在机器下次开机后执行计划任务
普通用户和 root 用户都可以使用 只有 root 用户可以使用(使用特定的配置启动普通任务)

cron과 anacron의 주요 차이점은 cron은 지속적으로 실행되는 머신에서 효과적으로 실행될 수 있는 반면, anacron은 하루 또는 일주일 내에 종료되는 머신을 대상으로 한다는 것입니다.

다른 방법을 알고 계시다면 댓글창에 공유해주세요.

원본 주소: https://www.tecmint.com/cron-vs-anacron-schedule-jobs-using-anacron-on-linux/‎

이 기사의 주소: https://www.linuxprobe.com/cron-anacron-work.html편집자: Zhang Xiong, 검토자: Peng Zengbao

이 기사의 원래 주소: https://www.linuxprobe.com/cron-anacron-work.html편집자: 문제 종결자, 검토자: 없음

이 기사와 관련된 기사 추천: ​​

  • SUSE Linux의 Zypper 패키지 관리자 사용 예
  • Swift Notes의 변수 설명
  • "Angular Development in Practice" pdf 전자책 무료 다운로드
  • RSS 구문 개요
  • "Spark Rapid Big Data Analysis 2nd Edition" pdf 전자책 무료 다운로드
  • Ubuntu에 Memcached 설치
  • awk 명령의 다양한 사용
  • Go 제네릭의 기본 사용
  • Python 또는 Bash를 사용하여 Jekyll 구성을 동적으로 생성하는 방법 files
  • Linux가 정확한 시간을 유지하도록 하세요

위 내용은 Linux에서 예약된 작업을 구성하는 방법 알아보기: cron 및 anacron 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 linuxprobe.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제