shell监控网卡状态,故障时自动重启网卡

post by rocdk890 / 2013-8-23 17:18 Friday linux技术
  今天朋友找我写个监控网卡状态的脚本,要求在系统网卡挂了可以自己启动起来,这个要求是不是很bt,我考虑了半天,简单的写了个shell脚本来监控,实现原理是使用ping来测试网络连通性,如果不通就重启网卡,当然我这个脚本还需要再改进下,比如1分钟之后还是不通再重启网卡,还有重启网卡后还要验证下网络是否是通了,这些其实可以交给大家去修改了.
  当时为了针对他服务器情况,登录上去查看了下,发现日志里有如下的报告:
点击查看原图
看来他服务器网卡真有问题,好吧,来看脚本吧.
脚本内容:
vi check_network.sh
#!/bin/bash
date="`date '+%Y-%m-%d %H:%M:%S'`"
ip="173.208.x.x"
nic="eth0"
lost_rate=`ping -c 8 -w 8 $ip | grep 'packet loss' \
		| awk -F'packet loss' '{ print $1 }' \
		| awk '{ print $NF }' | sed 's/%//g'`

if [ $lost_rate -eq 0 ]
then
echo "network_ok $date $ip $nic" >>/root/network_ok.log
elif [ $lost_rate -le 100 ]
then
echo "network_error $date $ip $nic" 
else
echo "network_error $date $ip $nic" >>/root/network_error.log
service network restart
fi
chmod +x check_network.sh
然后在计划任务里添加
*/3 * * * * /bin/sh /root/soft_shell/check_network.sh

重启crond任务后,然后再创建
network_ok.log
network_error.log
这两个文件来查看网卡正常和有问题是什么时候了.
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-425.html

标签: shell 脚本 监控 状态 网卡 network check 故障

评论: