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

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

我想创建一个 crontab 来帮我做一些工作。因为我的服务器不是 24/7 全天候运行,所以我决定使用它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 已经在执行每日/每周和每月的 crontab。

就我而言,我想每天执行该命令,因此我专注于第一行,我可以清楚地看到它每天anacron都会执行所有脚本cron.daily,延迟 5 分钟。

因此,我放弃了创建 anacrontab 或更有可能是创建条目的想法/etc/anacrontab,而是打算创建一个放置在中的 crontab,cron.daily因为 anacron 无论如何都会执行此文件夹内的每个脚本。

现在,当我使用以下命令创建“每日”crontab 时:

crontab -e

关于man crontabcrontab 放在什么位置,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而不是创建 crontab。

答案1

你真的应该阅读文档,来自 mancrontab(1)

crontab - 为各个用户维护 crontab 文件

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

如果您想每天运行一个文件,您需要做的就是将其放在/etc/cron.daily目录中并确保权限正确。

如果我是你,我就不会乱用anacrontab。

相关内容