更改了 crontab,现在作业在旧时间和新时间运行

更改了 crontab,现在作业在旧时间和新时间运行

我做了一个非最佳实践,/etc/crontab并手动将其更改为在特定时间运行每日 cron 作业,最初是为了测试,这样我就可以确保它正确启动。

/etc/crontab看起来像这样:

42 18 * * * root /etc/cron.daily/cronjob1
-*/15 * * * * root {built-in out-of-the-box crontab entry}

当我确信作业按预期运行时,我从中删除了该条目/etc/crontab,重新启动了 crond,并使用“ crontab -e”以 root 身份添加了一个新的 crontab

00 00 * * * /bin/sh /etc/cron.customjobs/cronjob1

“新的” /etc/crontab

-*/15 * * * * root {built-in out-of-the-box crontab entry}

自从进行此更改以来,该作业每天在 1842 和午夜运行。从那时起,系统甚至至少重新启动了两次,但作业仍然在旧时间运行。我不确定为什么 1842 的开始时间会卡在系统中的某个地方,我快要疯了,试图追踪这一点。SLES15,如果有帮助的话

我尝试查看/var/spool/cron/tabs,但只列出了我手动创建的那个crontab -e。我不确定还有什么应该保存不再在 crontab 中的计时器。

答案1

通常有一个默认的 cron 条目(可能在 / 中找到,etc/cron.d/或者当不在时由 anacron 提供/etc/crontab)来运行在目录中找到的所有脚本/可执行文件/etc/cron.daily

这通常是将要执行的作业规范:

/etc/cron.daily/cronjob1
          ˆˆˆˆˆ

你的 root crontab 运行一个不同的脚本

/etc/cron.customjobs/cronjob1
          ˆˆˆˆˆˆˆˆˆˆ

这就是为什么 cronjob1 运行两次的原因

相关内容