云服务上线运营一年多,一不小心,每天备份的数据库已经将近200G,导致服务出问题。tomcat的日志没有清理也直接填满了50G的空间。(发现这个问题是更新网络服务器之后发现网页不能访问,看日志有“ Got error 28 from storage engine”,百度了之后才发现是磁盘空间满了),为了做到防患于未然,在网上搜集了资料,找了一个shell脚本用于实时监控磁盘使用量并在超过阀值后自动发送报警邮件。
拷贝文档https://blog.csdn.net/springlovejava/article/details/89556289?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242
脚本简单说明:用df命令查看磁盘使用量信息,超过脚本设置的阀值(critical=80)80%,就会自动用sendEmail命令发送报警邮件(邮件smtp、email等需自行修改成真实存在的)。
1、首先直接复制下面脚本代码存为disk_check.sh文件
#!/bin/bash partition_list=(`df -h | awk 'NF>3&&NR>1{sub(/%/,"",$(NF-1));print $NF,$(NF-1)}'`) critical&#