crontab + 如何防止从 crontab 中删除前两行

crontab + 如何防止从 crontab 中删除前两行

是否可以防止从 linux crontab 中删除前两行?

我问是因为其他一些应用程序/脚本可以重新安装 crontab,所以我想确保 crontab 中的前两行是安全的

答案1

我认为覆盖 crontab 条目的应用程序是有缺陷的。如果您有机会这样做,您应该联系该软件的作者并提交错误报告。


不,无法将 crontab 中的 cron 作业标记为“受保护”。如果您通过加载预定义的 crontab

$ crontab crontab.txt

那么它将替换当前 crontab 中的任何现有作业。

以编程方式添加 crontab 条目的正确方法是将当前 crontab 保存到文件中,更新此文件并重新加载 crontab。这就是当您使用交互式编辑 crontab 时发生的情况crontab -e(该crontab命令会为您完成此操作)。

在脚本中,这可以通过以下方式完成

# dump the current crontab to file:
crontab -l >/tmp/crontab.txt

# some command to update the /tmp/crontab.txt text file, for example:
cat "$HOME/additional_entries.txt" >>/tmp/crontab.txt

# must also make sure that these entries don't already exist, obviously

# reload the modified crontab, which replaces the old one:
crontab /tmp/crontab.txt
rm -f /tmp/crontab.txt

相关内容