Shell 邮件发送告警测试

1.先编辑mail配置文件

bash 复制代码
#cat  /etc/mail.rc



#开启ssl
set ssl-verify=ignore

#证书目录,下方为centos系统证书默认位置,也自行生成证书并指定
set nss-config-dir=/etc/pki/nssdb

# 配置的第三方smtp服务器的地址及端口
set smtp=smtps://smtp.163.com:465 
                        
# 认证方式
set smtp-auth=login

# 发送邮件的邮箱账号
set smtp-auth-user=<your mail>
# 发送邮件的客户端授权码
set smtp-auth-password=<password>
# 设置发信人邮箱和昵称
set from=<your mail >

注:客户端授权码百度搜索查看方式即可

2.监控free内存发送告警

bash 复制代码
#free_check.sh 

#!/bin/bash
LOCAL_IP="192.168.159.128"
QQ_MAIL="你的接收邮箱地址"

#查询本机的剩余内存
FREE=$(free -h | grep -i "Mem" |awk '{print $4}')
if [[ $? -eq 0 ]];then
        echo -e "开始发送邮件"
        echo "$LOCAL_IP FREE IS $FREE" | mail -s "内存监控" $QQ_MAIL
        if [[ $? -eq 0 ]];then
                echo -e "Success send $QQ_MAIL "
        fi
fi

运行:

注:上方有关于无法识别证书颁发者的报错,不过不受影响,邮件已经成功发送了

相关推荐
深紫色的三北六号3 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash7 小时前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI17 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行1 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
崔小汤呀3 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应3 天前
vi编辑器使用
linux·后端·操作系统
何中应3 天前
Linux进程无法被kill
linux·后端·操作系统
何中应3 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应3 天前
Linux常用命令
linux·操作系统