要创建一个定时2小时执行reboot
命令的shell脚本,你可以使用cron
来设置定时任务。但是,cron
的最小时间单位是分钟,所以你不能直接设置一个2小时的定时任务。不过,你可以通过计算2小时等于多少分钟(即120分钟)来设置。
以下是如何做到这一点的步骤:
- 创建一个脚本:
首先,创建一个简单的shell脚本来执行reboot
命令。例如,你可以创建一个名为reboot_script.sh
的文件,并给它执行权限:
bash复制代码
#!/bin/bash | |
sudo reboot |
然后,给这个脚本执行权限:
bash复制代码
chmod +x reboot_script.sh |
注意:使用sudo
可能需要你提供密码,但在cron
作业中,这通常不是一个好的做法,因为它不会提示你输入密码。如果你想要自动重启而不需要密码,你可能需要配置sudoers
文件来允许无密码的reboot
命令,但这通常不推荐,因为它可能带来安全风险。
2. 设置cron作业:
使用crontab -e
命令编辑你的cron作业。然后,添加以下行来设置每120分钟(即2小时)执行一次脚本:
bash复制代码
0 */120 * * * /path/to/your/reboot_script.sh |
但请注意,如上所述,由于cron
的时间单位限制,你不能直接设置*/2
来表示每2小时。因此,我们使用了*/120
来表示每120分钟。
但是,如上所述,这种方法可能并不理想,因为cron
不会考虑系统负载或其他可能正在运行的任务。更常见的做法是使用像anacron
这样的工具,它可以处理这种情况,但它通常用于在系统启动时运行定期任务,而不是在特定的时间间隔内。
如果你真的需要每2小时重启一次系统(这通常不是一个好的做法,因为它可能导致数据丢失或其他问题),你可能需要考虑其他方法,如使用systemd
的定时器功能或编写一个自定义的守护进程来监控时间并触发重启。