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

运行:

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

相关推荐
Hey小孩11 分钟前
[个人总结] LDD3:3.字符驱动 - scull(4)
linux·驱动开发
陈让然11 分钟前
VS Code新版本无法连接WSL ubuntu18.04
linux·运维·ubuntu
oMcLin14 分钟前
如何在Oracle Linux 8.4上通过配置Oracle RAC集群,确保企业级数据库的高可用性与负载均衡?
linux·数据库·oracle
小杰帅气16 分钟前
神秘的环境变量和进程地址空间
linux·运维·服务器
Vect__16 分钟前
基于CSAPP对链接和库的理解
linux
胖咕噜的稞达鸭18 分钟前
进程间的通信(1)(理解管道特性,匿名命名管道,进程池,systeam V共享内存是什么及优势)重点理解代码!
linux·运维·服务器·数据库
Coder个人博客19 分钟前
Linux6.19-ARM64 boot Makefile子模块深入分析
linux·车载系统·系统架构·系统安全·鸿蒙系统
可爱又迷人的反派角色“yang”32 分钟前
k8s(五)
linux·运维·docker·云原生·容器·kubernetes
爱吃生蚝的于勒36 分钟前
【Linux】进程间通信之匿名管道
linux·运维·服务器·c语言·数据结构·c++·vim
好奇心害死薛猫42 分钟前
飞牛OS开机自动挂载SMB
linux