作家
登录

cron与anacron:如何在Linux中计划任务

作者: 来源: 2017-06-09 14:52:01 阅读 我要评论

cron与anacron:如安在Linux中筹划义务

在本篇中,我们会解释 cron 和 anacron,并向你展示如安在 Linux 中设置 anacron。我们也会比较这两个对象。

要在一个给准时光或者稍后安排一个义务,你可以应用 at 或者 batch 敕令,要使敕令可以或许反复运行,你可以应用 cron 以及 anacron 对象。

cron - 是一个用于运行筹划义务如体系备份、更新等的守护过程。它合适在那些 24X7 不间断运行的机械如办事器上运行的筹划义务。

要创建一份小我 crontab 文件,只要输入:

  1. $ crontab -e 

如安在 Linux 中设置 anacron

anacron 用于以天为单位的频率运行敕令。它的工作与 cron 稍有不合,它假设机械不会一向开机。

cron 也合适在那些不会 24X7 运行如标记本以及桌面电脑的机械上运行每日、每周以及每月的筹划义务(LCTT 译注:不合适按小时、分钟履行义务)。

假设你有一个筹划义务(比如备份脚本)要应用 cron 在天皇帝夜运行,也许你以及睡着,那时你的桌面/标记本电脑已经关机。你的备份脚本就不会被运行。

然而,如不雅你应用 anacron,你可以确保在你下次开启桌面/标记本电脑的时刻,备份脚本会被履行。

anacron 如安在 Linux 工作

anacron 义务被列在 /etc/anacrontab 中,义务可以应用下面的格局(anacron 文件中的注释必须以 # 号开端)安排。

  1. period   delay   job-identifier   command 
  1. @daily    10    example.daily   /bin/bash /home/aaronkilik/bin/backup.sh 

大年夜膳绫擎的格局中:

  • period - 这是义务的频率,以天来指定,或者是 @daily、@weekly、@monthly 代表天天、每周、每月一次。你也可以应用数字:1 - 天天、7 - 每周、30 - 每月,或者 N - 几天。
  • delay - 这是在履行一个义务前等待的分钟数。
  • job-id - 这是写在日记文件中义务的独特名字。
  • command - 这是要履行的敕令或 shell 脚本。

要浏览示例文件,输入:

  1. $ ls -l /var/spool/anacron/ 
  2. total 12 
  3. -rw------- 1 root root 9 Jun  1 10:25 cron.daily 
  4. -rw------- 1 root root 9 May 27 11:01 cron.monthly 
  5. -rw------- 1 root root 9 May 30 10:28 cron.weekly 

这是实际产生的:

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

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

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

这里有两个你应当懂得的 anacrontab 文件的重要变量:

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

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

Anacron – /etc/anacrontab:

  1. # /etc/anacrontab: configuration file for anacron 
  2. # See anacron(8) and anacrontab(5) for details. 
  3. SHELL=/bin/sh 
  4. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 
  5. HOME=/root 
  6. LOGNAME=root 
  7. # These WordStr cron's entries 
  8. 1       5       cron.daily      run-parts --report /etc/cron.daily 
  9. 7       10      cron.weekly     run-parts 

      推荐阅读

      《王者荣耀》如何改变了移动电竞时代?

    聚在网吧包厢里打手游,如今已不再新鲜。“这在两三年前几乎弗成能”,捕鱼网咖市场负责人彭聪告诉腾讯科技,但如今,跟着《王者光荣》的大年夜红大年夜紫,包厢组队“开黑>>>详细阅读


    本文标题:cron与anacron:如何在Linux中计划任务

    地址:http://www.17bianji.com/lsqh/35678.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)