是否可以防止从 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