前言:有时候当你挂BT 外出回来却发现早已断线 有可能机器白开了一天 下面的方法可以解决这个困扰 收集于互联网并稍作修改
Adsl 断网的解决方法:
一. 修改配置文件
$sudo gedit /etc/ppp/options 查找以下字段
lcp-echo-interval 30
lcp-echo-failure 4
这表示系统 30 秒会向 ADSL 服务器发出 echo request 以确认连线是否正常。如果 ADSL 服务器 120 秒 (30 秒 x 4) 都没有回应,系统会假定连线有问题,自动断开。您可以把 lcp-echo-failure 加大至 9999 或任意最大数
persist 持续连接 搜索: /etc/ppp/options和/etc/ppp/peers/provider 或/etc/ppp/peers/dsl-provider(这个可能已被替代)取消persist前面的#
二. 利用ping来判断并重启pppoe拨号的脚本
1. 首先写个脚本:
sudo gedit /usr/bin/repppoe
sudo chown `logname` /usr/bin/repppoe //假定logname为用户名yy
sudo chmod +x /usr/bin/repppoe
内容如下:
##!/bin/bash
if ping -c 3 www.baidu.com >>/dev/null 2>&1
then
exit 0
else
echo “rootpasswd” | sudo -S /etc/init.d/networking restart //rootpasswd=root用户密码
echo "network be restarted" >>/home/yy/pppoe.log
echo `date` >>/home/yy/pppoe.log
fi
exit 0
2. crontab -e 设定十分钟执行一次
*/10 * * * * source ~/.bashrc && cd /usr/bin/ && bash repppoe >>/dev/null 2>&1
三. 利用判断/var/run/ppp0.pid文件是否存在的脚本(该文件包含pppd进程的pid)
/usr/bin/pon /usr/bin/poff 每个发行版的拨号程序需自行调整
1. sudo gedit /usr/bin/repppoe
sudo chown `logname` /usr/bin/repppoe
sudo chmod +x /usr/bin/repppoe
2. 加入以下内容
#!/bin/bash
if [ -e /var/run/ppp0.pid ]; then
exit 0
else
echo “rootpasswd” | sudo -S /usr/bin/pon dsl-provider //rootpasswd=root用户密码
echo "pppoe be restarted" >>/home/yy/pppoe.log
echo `date` >>/home/yy/pppoe.log
fi
exit 0
3. crontab -e 设定十分钟执行一次
*/10 * * * * source ~/.bashrc && cd /usr/bin/ && bash repppoe >>/dev/null 2>&1
bnmluo 于 2012-12-14 16:45:38发表:
来学习学习。
sourcehappy 于 2011-11-04 18:37:07发表:
强烈顶你
408915547 于 2011-06-27 17:02:14发表:
这是怎么改阿,看不懂,也不分顺序的?
aaa12 于 2011-06-27 15:21:40发表:
恩 不错的
qianxiaoluo 于 2011-06-21 08:13:15发表:
顶。,。。
drivers 于 2011-05-29 11:34:38发表:
强烈顶你