码迷,mamicode.com
首页 > 系统相关 > 详细

linux 根据ping结果重启网卡脚本

时间:2015-04-17 18:40:16      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:网卡   ping   

本程序为解决centos系统某些情况下网卡频繁故障导致不能上网而重启以后可以正常上网的现象。

本程序自动获取eth0网卡的网关地址,每5分钟ping一次网关,根据反馈结果进行重启网卡命令,

检测结束以后,会在屏幕显示检测结果,并将日志保存在/var/log/目录

作者为linux新手,某些命令可能又不对之处,请大家指导更正

#本程序为解决centos系统某些情况下网卡频繁故障导致不能上网而重启以后可以正常上网的现象。
#本程序自动获取eth0网卡的网关地址,每5分钟ping一次网关,根据反馈结果进行重启网卡命令,
#检测结束以后,会在屏幕显示检测结果,并将日志保存在/var/log/目录
#作者为linux新手,某些命令可能又不对之处,请大家指导更正
#By:Fenei
#QQ:407603129 Mail:babyfenei@qq.com
#Ver 2015.4.17
 
#!/bin/sh
clear
#清空屏幕
time=‘date+%Y%m%d‘
#查询系统当前日期
echo | route -n | grep eth0 | grep UG | awk ‘{print $2}‘>/tmp/gateway.list
cat /tmp/gateway.list | while read gateway
#获取网卡eth0的网关信息,以便在后续步骤中检测网关通断情况
do
echo "****************请稍等片刻,正在检测网络状态*********************"
if ! ping -c 5  $gateway > /tmp/ping.log 2>&1
#将网关ping信息记录到/tmp/ping.log中
# ping -c 5 表示脚本运行以后ping网关5次
then
echo "**************************************************************************">> /var/log/pingerror.log
echo "现在时间是"$(date +%Y年%m月%d日%H:%M:%S ), "网络故障,将进行网卡重启操作!"
echo "现在时间是"$(date +%Y年%m月%d日%H:%M:%S ), "网络故障,将进行网卡重启操作!" >> /var/log/pingerror.log
tail -3  /tmp/ping.log >> /var/log/pingerror.log
#将错误信息添加当前时间戳并记录到错误日志中
ifdown eth0
ifup eth0 
echo "网卡重启成功,请检查网络是否可用!"
#重启网卡命令
else
echo "**************************************************************************">> /var/log/pingok.log
echo "现在时间是" $(date +%Y年%m月%d日%H:%M:%S ),"网络链接正常,谢谢使用!"
echo "现在时间是" $(date +%Y年%m月%d日%H:%M:%S ),"网络链接正常,谢谢使用!" >> /var/log/pingok.log
tail -3 /tmp/ping.log >> /var/log/pingok.log
fi
rm -rf /tmp/ping.log
rm -rf /tmp/gateway.list
#删除程序运行过程中产生的临时文件
done

 

本文出自 “www.fenei.com” 博客,请务必保留此出处http://453861.blog.51cto.com/443861/1633875

linux 根据ping结果重启网卡脚本

标签:网卡   ping   

原文地址:http://453861.blog.51cto.com/443861/1633875

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!