OpenWrt使用crontab实现路由器定时重启

Pop:路由器时间长了就会发热从而导致网速有影响,所以一般Pop每天都会重启一下路由器的,OpenWrt使用crontab像Windows一样执行计划任务,所以就可以轻松实现路由器定时重启了。

具体方法:

使用PUTTY连接到SSH后,执行以下命令

crontab -e

30 4 * * 2,6 sleep 70 && touch /etc/banner && reboot

注:
crontab -e//编辑crontab计划任务的列表
30 4 * * 2,6 //在每周二和周六的4时30分重启
sleep 70 && touch /etc/banner && reboot //执行延时70秒,使用 touch 写文件,重启

相关命令:
crontab命令也可以用直接用cat或者vi命令来查看或者修改文件就行
cat /etc/crontabs/root
vi /etc/crontabs/root

列出当前的默认定时任务列表:
crontab -l

删除当前的默认定时任务列表:
crontab -r

【vi命令编辑和保存文件的方法】

编辑文件:
1、输入vi命令+文件名,按回车键,如 vi /etc/crontabs/root
2、按键盘上的字母 I 后就进入编辑状态进行文件的修改

保存文件:
1、内容编辑完成后,按ESC中止键,退出编辑模式
2、输入 :wq 退出并保存编辑内容即可

按Ctrl + Z 退出vi编辑命令且不保存

提示:
为了让计划任务起到效果,建议先在OpenWrt的管理界面查看一下计划任务列表

然后再选择“系统”-“启动脚本”,将“cron”服务,然后重启一下路由器。

【说明:一定要设置延时,防止无限重启】

每天凌晨1点45分,延时70秒后自动重启:
45 1 * * * sleep 70 && touch /etc/banner && reboot

每周一早上7点59分,延时70秒后自动重启:
59 7 * * 1 sleep 70 && touch /etc/banner && reboot

每周一至周五早上3点自动重启:
0 3 * * 1-5 sleep 70 && touch /etc/banner && reboot

每周六至周日早上2点5分自动重启:
5 2 * * 6,0 sleep 70 && touch /etc/banner && reboot

每周二,周四,周六的晚上10点30分自动重启:
30 22 * * 2,4,6 sleep 70 && touch /etc/banner && reboot

每月1号,11号,21号的晚上11点50分自动重启:
50 23 1,11,21 * * sleep 70 && touch /etc/banner && reboot