系统范围的 crontab 与用户 crontab 关闭 PC

系统范围的 crontab 与用户 crontab 关闭 PC

我尝试每周凌晨 2 点关闭我的电脑一次。

如果我使用 root 用户 crontab (sudo crontab -e)

30 2 * * 3 shutdown -h now

将不会执行关机操作。

但是,如果我在系统范围的 crontab(sudo vim /etc/crontab)中为 root 放置相同的命令,电脑就会关闭:

30 2    * * 3   root    shutdown -h now

有什么区别?两次 root 都会关闭我的电脑。为什么它只有在系统范围的 crontab 中才有效?

答案1

理论上两种方法都可以。我想你会发现区别在于 PATH。你的版本可能不同,但在我的 /etc/crontab 中,顶部有一个 PATH 行,其中包含 /sbin(我的关机位于 /sbin 中)。

我想您会发现,当为 root 用户执行 CRON 时,它没有与之关联的路径,因此它不起作用。将命令更改为

30 2 * * 3 root /sbin/shutdown -h 现在

我想这会解决你的问题。

相关内容