shell实现自动adsl拨号
今天公司同事要我整个adsl自动重拨的shell,并检测是否连上了,这样才能保证内部测试服务器不掉网,好吧,下面我把脚本发出来.
系统:centos 5.x
脚本1:
cat /root/soft_shell/auto_adsl_1.sh
#!/bin/bash gateway=`ifconfig ppp0 |grep P-t-P| cut -f 3 -d ":"|cut -f 1 -d " "` inter=`ifconfig |grep ppp0|awk '{print $1}'` N=2 if [[ $inter -eq ppp0 ]] then /sbin/adsl-stop sleep 10 /sbin/adsl-start sleep 20 pkgloss=`ping -c4 $gateway|grep 'transm' |awk -F',' '{print $2}' |awk '{print $1}'` if [[ $pkgloss -lt $N ]] then echo "`date +%Y-%m-%d/%T` The network is not stable">>/root/adsl.txt else echo "`date +%Y-%m-%d/%T` The network is normal">>/root/adsl.txt fi fi
脚本2:
cat /root/soft_shell/auto_adsl_2.sh
#!/bin/bash gateway=`ifconfig ppp0 |grep P-t-P| cut -f 3 -d ":"|cut -f 1 -d " "` inter=`ifconfig |grep ppp0|awk '{print $1}'` N=2 if [[ $inter != ppp0 ]] then /sbin/adsl-start sleep 20 pkgloss=`ping -c4 $gateway|grep 'transm' |awk -F',' '{print $2}' |awk '{print $1}'` if [[ $pkgloss -lt $N ]] then echo "`date +%Y-%m-%d/%T` The network is not stable">>/root/adsl.txt else echo "`date +%Y-%m-%d/%T` The network is normal">>/root/adsl.txt fi fi
ps:脚本2的作用就是检测adsl拨号是否有连上.
评论: