是否有可用的 perl 脚本或任何脚本用于检查 sendmail 每个实例的邮件队列?这样我们就可以在 nagios nrpe 上使用它,因为 mailq 命令仅为一个实例设计。
答案1
主机中的 sendmail“实例”是使用配置文件启动的 sendmail。sendmail 实例不是 sendmail 进程。因此,如果您看到 的输出包含ps -auxw
多个 sendmail 进程,这并不意味着主机正在运行许多 sendmail 实例。
目前,正常情况下,您的主机中有两个 sendmail 实例在运行。一个实例已启动并运行中描述的配置/etc/mail/sendmail.cf
,另一个实例已启动并运行中描述的配置/etc/mail/submit.cf
。要查看这两个实例所包含的邮件队列,请执行以下命令:
mailq -C /etc/mail/sendmail.cf
mailq -C /etc/mail/submit.cf
在极不可能的情况下,如果您有其他实例正在运行,则相应的 .cf 文件必须存在。您也可以通过运行它们来查看它们的队列mailq -C configuration.cf
。
您可以在(Perl)脚本中组合这些命令的输出,以便随后执行任何您想做的事情。