linux邮件报警脚本

本文介绍了如何在Linux服务器上编写脚本监控磁盘使用率,当剩余空间低于20%时发送告警邮件。涉及到了mailx邮件客户端的配置和cron定时任务的设置。
摘要由CSDN通过智能技术生成

在日常的运维工作中,我们经常会对服务器的磁盘使用情况进行巡检,以防止磁盘爆满导致的业务故障.

如果能编写一个合理完善的监控脚本,当磁盘使用率达到我们设置的阀值时,就自动发送报警邮件,以便我们及时获悉到快爆满的磁盘情况!

实现要求:

  • 根分区剩余空间小于20%
  • 发送告警邮件给自己
  • 配合crond每5分钟检查一次脚本

配置:

安装邮件客户端:mailx

[root@openEuler ~]# yum install mailx

配置邮件发送者:

在mailx客户端中,需要先配置邮件发送者信息,进入mailx的配置文件  /etc/mail.rc  进行编写发送者邮件信息

[root@openEuler ~]# vim /etc/mail.rc 


# 在最后面添加以下内容
set from=9*****474@qq.com            # 此处填写自己的邮箱账号
set smtp=smtp.qq.com                 # 填写邮箱服务器
set smtp-auth-user=9*****474@qq.com    # 填写邮箱账号
set smtp-auth-password=pv*****hi    # 注: 这填写邮箱授权码,而不是密码
set smtp-auth=login

发送一封测试邮件,检查邮件配置是否成功

[root@openEuler ~]# echo "这是一封测试邮件!" | mail -s “测试邮件” 926185474@qq.com
-------------------------------------------------------------------------------------------------------------------------

前面是邮件内容,-s是邮件标题,后面跟发送的邮件账号

编写脚本:

创建一个disk1.sh脚本文件,并进行编写

#!/bin/bash

disk=$(df -h | grep -w / | tr -s " " | cut -d " " -f 5 | cut -d % -f 1)

str="警告!!!磁盘剩余内存小于20%"

if [ $disk -lt 20 ]
then
        echo $str | mail -s "磁盘报警信息" 9*****474@qq.com
fi

可以将判断的数值改大,进行测试,查看脚本是否可行

配置循环执行的例行性任务:

[root@openEuler ~]# crontab -e

# 编写以下内容
*/5 * * * * /bin/bash /root/disk.sh

等待5分钟,查看邮箱邮件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值