|
本帖最后由 fengchen 于 2019-11-16 14:07 编辑
[11.16]
只是ifconfig wlan0 down和up会导致默认路由丢失,修改了下脚本:
#!/bin/sh
GATEWAY='192.168.50.1'
PING_CNT=6
SLEEP_TIME=100
logger -t $0 "keepalive.sh is running ..."
sleep 60
while [ 1 ]
do
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
ifdown wwan
ifup wwan
logger -t $0 "ifdown & ifup wwan"
sleep 40
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
/etc/init.d/network restart
logger -t $0 "/etc/init.d/network restart"
sleep 60
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
logger -t $0 "rebooting ..."
reboot
fi
fi
fi
sleep $SLEEP_TIME
done
---------------------------------------------------------------------------------------
[10.8]
修改了下脚本#!/bin/sh
GATEWAY='192.168.50.1'
PING_CNT=6
SLEEP_TIME=100
sleep 200
while [ 1 ]
do
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
ifconfig wlan0 down
ifconfig wlan0 up
logger -t $0 "ifconfig wlan0 down & up"
sleep 20
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
ifdown wwan
ifup wwan
logger -t $0 "ifdown & ifup wwan"
sleep 40
OK_CNT=`ping -c $PING_CNT $GATEWAY 2> /dev/null | grep ttl -c`
if [ $OK_CNT -eq 0 ] ; then
logger -t $0 "rebooting ..."
reboot
fi
fi
fi
sleep $SLEEP_TIME
done
脚本最好放在/etc/config,在备份配置的时候会自动把这个文件夹内的文件打包
【9.25】
由于rc.local是由/etc/rc.d/S95done调用,里面如果有死循环会影响后面的初始化脚本
所以还是把这个脚本放进一个keepalive.sh文件,文件放在/root目录
system->startup->Local Startup填
======================================================================================
无线中继时,有时中继路由莫名其妙断线,找了很久没有找到合适的脚本,于是自己写了个脚本添加在system->startup->Local Startup
- #!/bin/sh
- GATEWAY='192.168.50.1'
- sleep 200
- while [ 1 ]
- do
- PING=`ping -c 5 $GATEWAY 2> /dev/null | grep ttl`
- if [ -z "$PING" ] ; then
- logger -t $0 "____Network has been broken____"
- /etc/init.d/network restart
- logger -t $0 "____Network has been restarted____"
- fi
-
- sleep 100
- done
复制代码
sleep是以秒为单位
也试过用crontab定时任务,因为执行频率高每次都会刷一条log,很讨厌
如果还有其它启动脚本,可以把这个脚本放进一个keepalive.sh文件,文件放在/root目录
此处则填
|
|