• nagios mutt+msmtp 收到不报警邮件


    问题描述:

        1、/nagioshome/var/nagios.log文件中显示邮件已经发出

        2、root用户执行 echo "hello" |mutt -s "test"  test@163.com 可以正常发送

          su - nagios -c  'echo "hello" |mutt -s "test"  test@163.com' 同样可以正常发送

        3、nagios运行时发送的邮件收不到

    解决思路:

        以上可以说明mutt+msmtp程序本身不存在问题,可能原因还是在nagios上,具体原因只能靠日志来分析,而nagios.log和系统

        日志里没有太多有用的信息,那么就自己想办法打印出相关的信息。

        msmtp命令参数中有一个“-d”的参数,可以详细输出发邮件整个过程的debug信息。

    解决过程:

        修改/etc/Mutt配置文件

        

        同时修改nagios配置文件/nagioshome/etc/objects/commands.cfg,并重启nagios服务。

        

        此时打开nagios界面,发送一条自定义的信息,然后打开/tmp/nagios.log查看相关信息。以下是我遇到的错误

        

        到这里问题基本明了了。就是对文件没有写的权限,最简单的方法当然是改权限,但,这是root的目录,为了安全不建议把root的默认权限550改成其它,                       所以,要从sent的来源着手。

        修改/etc/Mutt配置文件,并手动在/var/log/下创建sent.log文件,赋予它777的权限或把有者改为nagios用户。

        

        至此问题已经解决。

        最后还原所有为测试修改的地方,完成邮件发送。

        

        

  • 相关阅读:
    JSP/Servlet相关
    mysql 相关问题解决
    Git常用
    利用JDBC连接MySQL并使用MySQL
    memcache、redis原理对比
    Python 2.7.x 和 3.x 版本的重要区别
    python 单例模式
    python 装饰器原理及用法
    python 冒泡排序
    python 迭代器和生成器
  • 原文地址:https://www.cnblogs.com/xuxyblog/p/4158605.html
Copyright © 2020-2023  润新知