#!/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
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。