重新创建默认 crontab

重新创建默认 crontab

当我尝试在 16.04 上使新的 crontab 文件运行时,我以 root 身份犯了以下错误:

sudo su root
crontab /etc/cron.d/myjob

我意识到我一定改变了一些默认的 crontab 行为,但为时已晚crontab -e。我尝试像这样回滚:

# still as root:
crontab /etc/crontab

这是正确的默认设置吗?如果不是,那是什么?

附言:相关问题没有回答我的问题。那里的答案只说明了如何删除 crontab,而不是如何重新生成默认的 Ubuntu 安装设置,而这正是我需要知道的。

答案1

Cron 使用两组相当独立的定时任务文件。

  1. 其中之一是民众全系统),位于。 它/etc包括/etc/crontab和中的文件/etc/cron.d
    您链接的文件看起来很像默认的/etc/crontab。如果你的文件中含有此内容/etc/crontab,请保留它。

  2. 另一个包括私人的每个用户的文件。它们的实际位置是,/var/spool/cron/crontabs但此文件夹无法通过正常方式访问。这些 crontab 文件应使用crontab 命令。默认情况下
    ,用户的 crontab(包括 root,使用 访问sudo crontab <option>)不存在。当您发出命令crontab -e并且没有给定用户的 crontab 文件时,该命令将带来一个没有计划命令的模板,只有描述性注释。仅当您修改模板时才会保存该文件。
    要将此文件重置为默认状态(即r删除它),使用以下命令:

    crontab -r
    

相关内容