为什么crontab将我的crontab存放在/ var / spool / cron / crontabs / user而不是/etc/cron.daily

我想创build一个crontab为我做一些工作。 由于我的服务器没有全天候运行,我决定使用anacron

好的,我简单看了一下/etc/anacrontab

 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 

我看到anacron已经在执行每日/每周和每月crontabs。

在我的情况下,我想每天执行该命令,所以我专注于第一行,在那里我可以清楚地看到anacron正在执行cron.daily所有脚本,每天延迟5分钟。

所以我放弃了创build一个anacrontab的想法,或者更可能是/etc/anacrontab一个条目,并且打算创build一个放在cron.daily的crontab,因为anacron会执行该文件夹中的每个脚本。

现在当我创build一个“每日”-crontab:

 crontab -e 

关于man crontab ,crontab被放在var/spool/cron/crontabs/user而不是/etc/cron.daily ,我希望把我的crontab放到cron.daily中,由anacron执行。

问题

  1. 为什么我的意图错了,我的crontab不是由anacron自动执行的,因为它没有放在cron.daily里面。
  2. cron.daily的目的只是包括系统和自定义脚本,而不是crontabs本身。
  3. 要完成我的工作,将anacrontab放在etc/anacrontab而不是创buildcrontab是正确的方法。

你应该真的从man crontab(1)

crontab – 维护个人用户的crontab文件

crontab -e命令编辑在/ var / spool / cron / crontabs / user中find(或创build)的当前用户的crontab(5)文件。

如果你想每天运行一个文件,你只需把它放在/etc/cron.daily目录下,并确保权限是正确的。

如果我是你的话,我不会惹恼anacrontab。