nagios插件监控分区变化的脚本

#!/bin/bash

##################################################################################################################
# 作 者         :Witee                                                                                          #
# 最后修改时间  :2013-7-9                                                                                       #
# 版 本         :1.0                                                                                            #
# 联系方式      :http://www.weibo.com/witee                                                                     #
# 作用及使用方法: 直接执行脚本 使用df命令取得两次分区变化,并写入文件,然后对比两个文件md5值的变化              #
##################################################################################################################

# 状态定义
STATE_OK=0
STATE_WARNING=1
STATE_CRITICAL=2
STATE_UNKNOWN=3

# 一些定义
# 分区模板,以此为分区变化依据
partition_file='/tmp/partition.log'
# 当前分区情况
now_partition_file='/tmp/now_partition.log'

# 判断初始分区记录文件是否存在, 所使用的命令 df -h |awk '{print $1,$6}' > /tmp/partition.log
if [ ! -f $partition_file ]
then
   echo "$partition_file not found ,if this is the first running ,please create it ."
   exit $STATE_UNKNOWN
fi

# 生成当前分区表文件
df -h |awk '{print $1,$6}' > $now_partition_file
if [ -f $now_partition_file ]
then
   #计算两个分区文件的md5值,并对比    
   partition_md5="`md5sum $partition_file |awk '{print $1}'`"
   now_partition_md5="`md5sum $now_partition_file |awk '{print $1}'`"
   if [ "$partition_md5" != "$now_partition_md5" ]
   then
       echo -e "CRITICAL - Partition has been changed. Details old->new At:"`diff -b $partition_file $now_partition_file`""
       exit $STATE_CRITICAL
   else
       echo "OK - Partitions does not change."    
       exit $STATE_OK
   fi
else
   echo "$now_partition_file not found ,please check."
   exit $STATE_UNKNOWN
fi

创新互联建站是一家集网站建设,余干企业网站建设,余干品牌网站建设,网站定制,余干网站建设报价,网络营销,网络优化,余干网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。


分享题目:nagios插件监控分区变化的脚本
文章分享:http://scyanting.com/article/pdhodo.html