每天重启服务器吗?

每天重启服务器吗?

我想创建一个 cron 作业,每天在指定的时间执行并重新启动 ubuntu 服务器。

我尝试仅在 cron 中添加reboot,但它不起作用,而当我尝试从 CLI 执行它时它可以工作。

请指教,我应该在 cron 中添加什么命令,以便它每天在特定时间重新启动服务器。

答案1

您需要运行以下命令:

/sbin/shutdown -r now

具有 root 权限。执行此操作的方法是使用 root 的 crontab,而不是用户 crontab。sudo在通常的 crontab 命令之前执行的操作是:

sudo crontab -e

提示:您可以将 shell 的标准编辑器切换为crontabvisudo之类的编辑器sudo update-alternatives --config editor,然后选择您喜欢的编辑器。

编辑 crontab 您应该将以下行添加到您的文件中:

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command  

@daily root /sbin/shutdown -r now

如果您使用以下命令进行编辑,则必须删除“root”:sudo crontab -e。

这里的“@daily”是每天午夜的快捷方式(相当于“0 0 * * *”)。顺便问一下 - 你为什么要每天重启?

编辑-参见https://help.ubuntu.com/community/CronHowto以下内容:“Crontab 命令通常存储在属于您的用户帐户的 crontab 文件中(并以您的用户权限级别执行)。如果您想定期运行需要管理权限的命令,请编辑根 crontab 文件:sudo crontab -e”

编辑-感谢@charlesbridge的评论-编辑答案以包含完整路径

答案2

就我的情况而言,最好的工作方法是

systemctl reboot

相关内容