每天重启的 Cronjob

Cho*_*per -4 cron reboot

我设置了这个 cronjob 因为我希望我的服务器每天在 05:00 重新启动

# file: /etc/cron.d/reboot
* 5 * * * root reboot &> /dev/null
Run Code Online (Sandbox Code Playgroud)

我认为它第一次奏效,因为我被踢出了 ssh 连接。但是现在我几天后回来发现了这个:

$ uptime
07:12:13 up 7 days
Run Code Online (Sandbox Code Playgroud)

这是否意味着它在 7 天内没有重新启动?怎么了?

dom*_*som 6

正如其他评论员所说,如果uptime报告正常运行时间为 7 天,则系统在此期间没有重新启动。

除了@Dennis 的正确评论外,/dev/null暂时移除管道 to ,然后检查root的邮件和/var/log/syslog.

如果reboot命令不在正在执行的 shell 上PATH,cron 可能根本找不到它。

有些系统没有该reboot命令,在这种情况下,您需要使用shutdown -r now.