【发布时间】:2018-02-15 04:02:54
【问题描述】:
我想知道是否将 crontab 添加到 /etc/crontab 或 crontab -e 是否重要?
我有一个 Ubuntu 17 和 Debian 9 虚拟机正在运行,但我不知道哪个是正确的地方。
提前致谢!
【问题讨论】:
我想知道是否将 crontab 添加到 /etc/crontab 或 crontab -e 是否重要?
我有一个 Ubuntu 17 和 Debian 9 虚拟机正在运行,但我不知道哪个是正确的地方。
提前致谢!
【问题讨论】:
它们不一样。
crontab 命令特定于用户。当你编辑你的
crontab(通过crontab -e)你真的把它保存到
/var/spool/cron/。我发现这更适合互动
设置/维护:它使用您的$EDITOR。 (虽然我见过工具
就像whenever那样
自动填充用户 crontab。
“系统”cron 文件位于 /etc/crontab 和 /etc/cron.d 中。
这些类似于您用户的 crontab,但格式有一个
附加(第六个)字段来指定以哪个用户身份运行,您将
需要root权限才能更改这些。后一个目录通常是
工具用于将 cron 脚本放入、系统安装或您的
自己的部署例程。
您还可以在/etc/ 中找到相关的系统目录,例如
cron.daily/、cron.hourly/ 等。
按照各自的节奏跑。例如,/etc/cron.daily/logrotate
每天轮换系统日志文件。他们通常由您精心策划
/etc/anacrontab 在系统间添加一些小的随机延迟。
有几个地方可以查找各个部分的文档 cron 的。相关的手册页是:
crontab(1) -- the command
crontab(5) -- spec formatting
cron(8) -- the daemon
现在使用 SystemD 替代 cron 是 timers.
【讨论】: