#编写一个监控网卡的脚本
#1)每10分钟检测一次网卡ens32的流量
#2)如果流量为0,则重启网卡
#提示:使用sar-n DEV
#!/bin/bash
## 为了能够精确匹配关键字,需要设定语言为英语
LANG=en
## 检查sar命令是否存在,不存在需要安装对应的包
if ! which sar &>/dev/null
then
echo "没有sar命令,使用yum安装"
## 通过安装sysstat包来安装sar命令
yum install -y sysstat &>/dev/null || (echo "sar命令无法安装";exit 1)
fi
## 将eth32网卡1分钟的流量数据写入临时文件/tmp/ens32.log
sar -n DEV 1 60 |grep ens32 > /tmp/ens32.log
## n1为网卡接收的数据量
## n2为网卡发送的数据量
n1=`grep -i average /tmp/ens32.log | awk '{print $5}' |sed 's/\. //g'`
n2=`grep -i average /tmp/ens32.log | awk '{print $6}' |sed 's/\. //g'`
## 删除临时文件
rm -f /tmp/ens32.log
## 当接收和发送的数据量全部为0,说明网卡有问题了,需要重启网卡
if [ "$n1" == "000" ] && [ "$n2" == "000" ]
then
echo "网卡ens32有问题,需要重启网卡"
ifdown ens32 && ifup ens32
else
echo "网卡ens32正常"
fi
<<'COMMENT'
关键知识点总结:
1)临时文件可以给我们带来很大便利,但不要忘记在脚本结束时删除
2)用if which xxx来判断某个命令在不在
3)使用 || 或者&&时,可以用()将多条命令作为一个整体
COMMENT
监控网卡是否正常
转载上一篇:监控服务器CPU使用率
下一篇:判断是否开启mysql服务
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
centos 双网卡配置
双网卡
双网卡 -
监控网站URL是否正常
监控网站URL是否正常
监控网站URL -
Greenplum 监控segment是否正常数据 sql 字段 数据库 正常运行
-
python args可以是list吗
args 和 kwargs 不是必须的,* 和 ** 才是必须的两者都用于对函数进行参数传递,允许传递不定量的参数给函数 1. Overview如果对各位同学这两个参数知道的很少,那不妨先输出一下,看看他们是什么:def func(*args, **kwargs): print(args) print(kwargs) print("----------------
python args可以是list吗 *args和**kwargs python基础知识 python java