代码改变世界

磁盘使用量监控和警告

2020-06-23 09:21  方斌  阅读(577)  评论(0编辑  收藏  举报

磁盘监控脚本就是对我们使用的 linux 系统,或者我们在公司里面对我们的服务器进行管理,要时刻留意磁盘容量是否超出额度,什么时候进行及时的解决;然而,我们今天写的这个脚本就会帮到我们,会更加智能自动化的进行管理,能非常及时的发现问题,并做出警告提醒,从而大大提高我们的工作效率。。。

脚本代码

#!/bin/bash
#用途:磁盘额度监控警告
#开发者:酋长rosen
#联系方式:https://blog.csdn.net/weixin_42867972
#版本号:2.0.10
while [ 1 -lt 2  ]   #嵌套重复性循环
do
sleep 10         #每十秒钟监控一次
  war=`df -h | grep "sd" | tr "%" " " | awk '$5>70{print $1,$2,$4,$5"%"}' | wc -l` 
  #查找超标的磁盘数量为多少(阈值定为70%,可以自定义修改)
    if [ $war -ne 0 ]   #对上述的数量进行判断
    then                #如果不等于零
      date +%F >> /root/disk.txt  #输出当前时间   
          df -h | grep "sd" | tr "%" " " | awk '$5>70{print $1,$2,$4,$5"%"}'  >> /root/disk.txt
        #把磁盘读取到的磁盘信息重定向到对应的文件当中  (阈值定为70%,可以自定义修改)
    wall < /root/disk.txt   #随后进行广播
    else    #如果等于零
        echo -e "\033[32m [Not over] \033[0m"  #报告额度没有超标
    fi
done

脚本思路

1、监控脚本就必须时时刻刻保持着运行,所以嵌套了重复性循环,每十秒钟执行一次。
2、对磁盘容量进行检查,超标数量是否超过0个,是的话对磁盘容量的信息和当前时间进行持续性的广播,
   提醒我们及时对磁盘进行内存清理维护
3、如果没有容量超标的磁盘就输出没有超标的信息,提示为绿色。(阈值定为70%,可以自定义修改需求决定)
4、把脚本运行交给后台执行,对我们的磁盘容量进行实时监控。

输出 “echo $PATH” 寻找脚本摆放的位置(默认首先第一个)其他路径也是可以的呢
把脚本放到 “/usr/local/sbin” 并且改名 “disk-monit” (名字可以自定)

[root@deng-131 order]# echo $PATH 
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@deng-131 order]# cp disk-monit.sh /usr/local/sbin/disk-monit
[root@deng-131 order]# disk-monit &
[3] 107646

通过在命令后加 “&” 意思是把任务交给后台去处理,这样就不会占用我们的进程,当磁盘额度超标的时候就会发出广播提示。
————————————————
版权声明:本文为CSDN博主「ぃ小小宇宙」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42867972/java/article/details/81841059