Ubuntu-Server:crontab 中的重启命令。仅在需要时触发

Ubuntu-Server:crontab 中的重启命令。仅在需要时触发

有没有办法在 crontab 中设置一个命令,以便每天早上(例如凌晨 3 点)检查是否需要重新启动,如果是,则调用 reboot 命令?

我可以用某种方式利用:

/var/run/reboot-required

编辑:

我尝试创建这样的脚本:

#!/bin/sh
if [ -f /var/run/reboot-required ]; then
  reboot
fi

然后调用该脚本,sudo crontab -e但它似乎没有重新启动机器。相反,我无法打开到服务器的 SSH 会话,我必须物理地关闭电源并重新启动机器才能真正重新启动它并再次获得 shell 访问权限。


编辑2:

我的脚本现在看起来像:

#!/bin/sh
if [ -f /var/run/reboot-required ]; then
  /sbin/reboot
fi

我已经调用了脚本/etc/crontab,但与我第一次编辑时相同的问题仍然存在。


编辑 3:工作

一旦我将脚本改为调用:

#!/bin/sh
if [ -f /var/run/reboot-required ]; then
  /sbin/shutdown -r now
fi

并且仍然处于 之下/etc/crontab,整个过程按照我预期的方式进行。

现在,如果出现“需要重新启动”消息,系统将重新启动,否则系统将继续运行。

相关内容