Monit 和 amavis

Monit 和 amavis

我注意到有时 amavis 没有运行。

我以为 monit 正在监视该过程,但它似乎没有警告我或修复它。

我的 monitrc 条目如下所示,我可以确认使用 monit 启动/停止该过程有效:

check process amavisd with pidfile /var/run/amavis/amavisd.pid
     group mail
     start program = "/etc/init.d/amavis start"
     stop  program = "/etc/init.d/amavis stop"
     if failed port 10024 protocol smtp then restart
     if 5 restarts within 5 cycles then timeout
     depends on amavisd_bin
     depends on amavisd_rc

   check file amavisd_bin with path /usr/sbin/amavisd-new
     group mail
     if failed checksum then unmonitor
     if failed permission 755 then unmonitor
     if failed uid root then unmonitor
     if failed gid root then unmonitor

   check file amavisd_rc with path /etc/init.d/amavis
     group mail
     if failed checksum then unmonitor
     if failed permission 755 then unmonitor
     if failed uid root then unmonitor
     if failed gid root then unmonitor

我该如何解决这个问题?

答案1

我认为正确的 pidfile 路径是/var/run/amavisd/amavisd.pid

d因此您在“ amavisd”目录名称中缺少“ ”。

启动和停止可以工作,因为启动/停止路径没问题,但是找不到 pid 文件。

答案2

首先检查 monit 配置中的所有测试是否有效。

  • 配置文件是否具有有效的语法?
  • 确实/var/run/amavis/amavisd.pid存在?
  • /etc/init.d/amavis启动和停止功能有效吗?
  • amavis 是否正在监听端口 10024 协议 SMTP?
  • /usr/sbin/amavisd-new存在吗/etc/init.d/amavis

monit summary然后你应该继续检查和的输出monit status verbose,看看输出是否能帮助你找到问题。

这可能是 monit 的问题,也可能是 amavis 的问题。或者两者兼而有之。如果您发布更多信息(例如 的输出monit summary),我将编辑此答案以提供更多帮助。

相关内容