“清理:致命:未找到优先级‘LOG_IF00’,正在退出” - 这样的消息(通常成倍出现 - 每次两次)不时在我的 Debian 控制台中弹出。这是什么意思?我该如何修复它?谷歌表示这与 postfix-policyd 和 syslog 相关。
重现步骤:
- 安装 Debian 5.0.5。
- 使用 OpenLDAP 安装并配置 iRedMail 0.6.0。
- 将不稳定和实验性的存储库添加到 apt 源列表中。
- 升级并进行 dist-upgrade 直到没有更多需要升级的内容。
- 修复dovecot配置中的错误(新版本中一些参数有所改变)。
- 然后一切都运行,但实际上不起作用,并且上述消息不时弹出。
答案1
查看 postfix-policyd 配置中的 log_mail 变量。是否类似以下内容?
log_mail=ifoo@syslog...
如果我的猜测是正确的,只需将“ifoo”更改为“info”就可以了。
答案2
我猜想您的 postfix 灰名单 perl 脚本中存在语法错误。请确保该脚本中的 syslog 行如下所示:
syslog $syslog_priority, "请求年龄 %d", $now - $time_stamp if $verbose;
您应该能够从 /etc/postfix/master.cf 文件中的条目找到每个脚本的灰名单。
答案3
这句话似乎来自旧版本的 policyd:
logmessage(“致命:未找到优先级‘%s’,退出\n”,token);
IFOO 不匹配任何已知的日志级别,因此它终止;它可能意味着 INFO。我的建议是安装ack-grep并查找/etc
包含 IFOO 的配置文件。然后您可以确定它是直接来自 Debian、直接来自 iRedMail,还是在脚本中混杂。鉴于 iRedMail 安装程序的糟糕状态,我可能会先在那里查看。
找到该文件后,将其更改为 INFO 就可以了。
答案4
仅供参考,这是两个文件中的间距错误,而不仅仅是一个文件(正如互联网上的其他线程所识别的那样,取决于您的构建):
在两个文件中:
/etc/postfix-policyd.conf
/etc/postfix-policyd_sender_throttle.conf
编辑此行:
SYSLOG_FACILITY="LOG_MAIL | LOG_INFO"
删除空格,因此内容为:
SYSLOG_FACILITY="LOG_MAIL|LOG_INFO"
在两个文件中。然后,重新启动服务:
/etc/init.d/postfix restart
/etc/init.d/postfix-policyd restart
然后你可以通过运行来测试:
/usr/lib/postfix-policyd/cleanup -c /etc/postfix-policyd.conf
并且它不再应该给出错误
"cleanup: fatal: didn't find priority 'LOG_IFOO', exiting"
希望这可以帮助!
另外,当我运行 Debian 5.0“Lenny”时,这个问题影响了我的 Amazon EC2 实例,在我将其升级到 Debian 6.0.6“Squeeze”后,这个问题开始出现。它似乎没有给我的功能带来任何麻烦,它只是在日志文件中运行,每隔约 10 分钟出现在控制台中。