梅林固件添加定时重启计划
最近家里的米家智能设备总是不定时的失联,表现为小爱音响无法控制这些设备。只能重启路由器恢复。
然而梅林内置的重启计划(系统管理-Enable Reboot Scheduler)设置后并不生效。不晓得怎么回事……
于是想到可以直接在crontab里添加reboot命令,登上路由器SSH,crontab -e
添加 0 4 * * * reboot
凌晨4点钟,路由器倒是重启了,可是再次查看crontab,发现我添加的重启任务丢失了……
继续研究。
在 https://github.com/RMerl/asuswrt-merlin/wiki/Scheduled-Reboot 找到了解决方法
打开路由器 /jffs/scripts/init-start
脚本(如没有该文件,可以自行新建),添加以下命令
#!/bin/sh
cru a ScheduledReboot "0 4 * * * /sbin/reboot"
init-start脚本作用是:在JFFS挂载后,其他服务启动前执行脚本中的命令,等于是优先级最高的自定义脚本。
保存脚本后还要设置权限
chmod a+rx /jffs/scripts/*
OK,重启一下路由器。这样添加定时重启计划就不会丢失了。
其他自定义脚本可以参考:https://github.com/RMerl/asuswrt-merlin/wiki/User-scripts
20 条评论
我买的洋垃圾R6900其实蛮稳定,1年只hang过一次;不过还是用这个办法加了每周一凌晨4点自动重启,挺不错!
好使
你好,请问一下 如果想每周重启一次 该如何处理呢
@命令
比如,每周2的凌晨1点30分重启的命令
30 1 * * 2 /sbin/reboot
———
crontab格式请参考:https://tool.lu/crontab/
@Bug侠
朋友, 我试了下 计划重启任务还是不行 这个脚本的权限应该是没有问题的 还有其他地方要注意吗
@命令
比如,每周2的凌晨1点30分重启的完整脚本内容是:
—————
#!/bin/sh
cru a ScheduledReboot “30 1 * * 2 /sbin/reboot”
—————
并确定给予其执行权限,如果没问题,我也不确定是什么导致的,抱歉,已经不玩梅林很久了,有点生疏。
请问 chmod a+rx /jffs/scripts/* 权限是怎么设置的 可以详细的说明下吗?非常感谢啦 !就差最后一步
@wangzheguilai
搞定了吗?这个我一般是通过SSH登录到路由器执行的,貌似也可以直接在软件中心安装webshell或者shellbox来执行命令,另外好像设置里有个“Run cmd”的功能,也可以执行命令,抱歉我现在手边没有梅林的路由器了,所以只能帮你到这。
@Bug侠
还没有搞定,我用SSH登陆了,然后在命令输入chmod a+rx /jffs/scripts/* 但没有反应,还是说我方法错误, 可不可以详细说下这个设置权限的流程 SSH 我会用 这个命令到底在哪个环节下输入或者流程是什么样的。真的非常的感谢您。
@wangzheguilai
执行 chmod a+rx /jffs/scripts/* 是没有反应的,这行命令是把这个文件夹的所有文件更改为可执行权限,是没有输出的。
我简单给你捋一捋
1.新建或者修改 /jffs/scripts/init-start 文件,在这个文件里写定时任务的内容,添加完后保存该文件
2.然后SSH执行上面的命令,chmod a+rx /jffs/scripts/* 给与文件权限(这一步执行完是没有输出的,就是没反应)
3.重启一下路由器,看看定时任务有没有丢失,如果没有丢失,说明通过脚本添加定时重启计划就成功了。
@Bug侠
站长现在在用啥路由器,不求带宽高,只求有第三方固件能装FRP之类,可靠不总重启,且信号强度狠一点,不用mesh覆盖尽可能大的范围;之前我的俩R6900梅林基本符合这个条件
@fisher
我现在的方案是:J1900软路由+网件EX7000,单扩展器覆盖强度没得说。软件在软路由上,不影响WiFi,而且可以折腾的东西也很多
@Bug侠
之前用过一个EX6200v2,好像效果不咋地;感觉貌似EX系列非但不能刷固件(当然只做AP不刷也行),信号强度和原厂固件稳定性也一般(我的EX6200v2有丢配置的历史)
后来EX6200v2就被我刷成openwrt(秒变路由)然后放着落灰了
45 4 * * * reboot
每天4点45分重启路由器
代码:时在后,分在前
45 4 * * * reboot
每天4点45分重启路由器
代码是…….
分在前,时在后
@sujieqi
对啊,没毛病
梅林改版7.9.1为了解决软件中心奔溃问题,修改了数据库类型,保证软件的稳定性,因为这次修改定时脚本和超时脚本失效了,其他项中的定时重启应该是用到改定时脚本功能,所以无法在此中定时重启,开发者权衡时应该是认为软件中心的重要性超过定时脚本,因为软件中心一旦奔溃,需要格式化整个jffs分区,这对于用户来说是一个痛,特别是380已经完结,而定时脚本的使用率普遍不高,且可以自行编写脚本解决大部分需求
请问怎么创建init-start 脚本
@sjq
使用shell下的vi或者vim编辑工具,或者WinSCP,文章里没有写,您可以百度一下这几个工具的使用方法。
@Bug侠
已处理.谢谢