zoukankan      html  css  js  c++  java
  • Linux使用mailx发送邮件--技术流ken

     

    前言

     

    最近想要监控系统服务运行情况并实现自动发送邮件报警,zabbix虽然也可以实现这样的功能,但是这里使用一个非常简单的办法就可以实现。需要安装mailx工具,mailx是一个小型的邮件发送程序。

    安装步骤

    第一步:安装mailx

    [root@ken ~]# yum install mailx -y

    第二步:编辑配置文件

    在mail.rc这个配置文件中,在末行添加如下的内容

    [root@ken ~]# vim /etc/mail.rc 
    set from="1614833188@qq.com"     #这个和第三行邮箱地址需要保持一致
    set smtp="smtp.qq.com"
    set smtp-auth-user="1614833188@qq.com"
    set smtp-auth-password="xxxxxx"   #邮箱授权码
    set smtp-auth="login"

     说明

    from:对方收到邮件时显示的发件人

    smtp:指定第三方发邮件的smtp服务器地址

    set smtp-auth-user:第三方发邮件的用户名

    set smtp-auth-password:用户名对应的密码,有些邮箱填的是授权码

    smtp-auth:SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式

    授权码获取

    第一步:授权码获取

    登录qq邮箱,点击设置>账户

     点击生成授权码即可

    测试

    这句命令的后面的1614833188@qq.com是收件地址

    [root@ken ~]# echo "这是一封测试邮件" | mail -s "测试邮件" 1614833188@qq.com

    以上已经实现了发邮件功能!!!

     邮件发送书写格式

    1)  无邮件正文

    mail -s "主题"  收件地址

    实例: mail -s "测试"  1614833188@qq.com

       

    2) 有邮件正文

    •  mail -s "主题"  收件地址< 文件(邮件正文.txt)

    实例: mail -s "邮件主题"  1614833188@qq.com < /data.txt

    •  echo "邮件正文" | mail -s 邮件主题  收件地址

    实例: echo "邮件正文内容" | mail -s "邮件主题"  1614833188@qq.com

    •  cat 邮件正文.txt | mail -s 邮件主题  收件地址 

    实例: cat  /data.txt | mail -s "邮件主题"  1614833188@qq.com

       

    3)  带附件

    •  echo "邮件正文" | mail -s "主题"   -a 附件  收件地址

    实例: echo "邮件正文"  | mail -s "邮件主题"   -a /etc/passwd  1614833188@qq.com

    实战案例

    需求:

    1. 检测本机web服务

    2. 如果web服务宕机发送邮件报警通知管理员

    第一步:编辑检测脚本

    #!/bin/bash
    while true
    do
    num=`ss -tl | grep -c http`
    if [ $num -eq 0 ];then
            echo "web服务宕机,请立即检查修复!" | mail -s "web服务宕机" 1614833188@qq.com
            break
    fi
    done

    第二步:后台运行脚本

    [root@ken ~]# nohup bash test.sh &
    [1] 6643
    [root@ken ~]# jobs
    [1]+  Running                 nohup bash test.sh &

    第三步:模拟web服务宕机

    [root@ken ~]# systemctl stop httpd

    第四步:检查邮件

     

  • 相关阅读:
    使用css的类名交集复合选择器 《转》
    在Web.config或App.config中的添加自定义配置 <转>
    [转]给ListView加上ComboBox或是TextBox控件
    WinForm Timer控件,三级联动[省,市,区]
    WinForm用户窗体
    WinForm 进程 ,线程
    WinForm MDI窗体容器
    WinForm 控件TabelControl对TabelPage页的添加,删除操作
    [转]C#重绘TabControl的Tabpage标签,添加图片及关闭按钮
    WinForm sender初级应用
  • 原文地址:https://www.cnblogs.com/kenken2018/p/10242892.html
Copyright © 2011-2022 走看看