管理 cron。*

管理 cron。*

我看到 Ubuntu 使用/etc/cron.{daily,weekly,monthly}cron 任务。我还看到有些东西(例如updatedbfrom mlocate)将它们的任务放在那里:

$ dpkg -L mlocate|grep y/m
/etc/cron.daily/mlocate

有时,我想禁用其中一些作业(mlocate在本例中)。我显然可以sudo mv /etc/cron.daily/mlocate ~/cron.daily-dont-run这样做。但是,有两个问题:

  • 这是如何管理的?是否有类似service管理 SysV init 脚本或覆盖的方法,如Upstart 简介,10.41.1 覆盖文件? 我想告诉它“好的,我不想让你启动”,但不触及已安装的内容(请参阅下一项了解原因之一)
  • 如果我删除然后重新安装mlocate,我会再次获得 cron.daily 条目。另外,我猜(这是真的吗?)升级可能不会顺利进行(例如,如果 cron 条目中存在依赖项,它将生成 cron.daily 条目或可能破坏软件包)。

如果有,您会如何处理/解决上述问题?

答案1

一种方法是chmod -x /usr/bin/updatedb.mlocate。 cron 脚本会检查 +x 位,如果不可执行,则会退出。应该比弄乱 cron 文件更不具侵入性,但需要注意的是,手动运行 updatedb.mlocate 会更复杂。

相关内容