我有一个 Ubuntu 18.04 LTS 服务器,在某个时间点(不是由我设置)运行GNU mailman,使用Postfix作为 MTA。
我不再在此服务器上运行任何邮件列表,并且尽我所能尝试通过运行以下命令从服务器中删除和清除Gnu mailman :
sudo apt remove mailman
sudo apt autoremove mailman
sudo apt purge mailman
sudo apt autoremove --purge mailman
这会删除 mailman 和一些(大多数?)配置和数据文件,但是当我查看 Postfix 日志(/var/log/mail.log
)时,我大约每五分钟得到一次:
[…]: error: open database /var/lib/mailman/data/aliases.db: No such file or directory
[…]: warning: hash:/var/lib/mailman/data/aliases is unavailable. open database /var/lib/mailman/data/aliases.db: No such file or directory
[…]: warning: hash:/var/lib/mailman/data/aliases: lookup of 'root' failed
我明白我为什么得到它们,因为清除GNU mailman删除了所有这些文件。
我很确定请求这些文件的程序是Postfix,正在运行:
sudo service postfix status
… 产生相同的三行错误和警告。但是,我无法弄清楚是什么让Postfix想要打开这些文件。
重启后缀:
sudo systemctl restart postfix
... 清除错误,但只是暂时的。大约五分钟后,当我检查状态时,它们又回来了。
问题是:如何摆脱这些错误和警告(无需重新安装不再需要的应用程序)?
我通过搜索 in 和 below 的 filname 发现了这一点
/etc
。看起来Postfix尝试访问文件
/var/lib/mailman/data/aliases
的/var/lib/mailman/data/aliases.db
原因来自/etc/postfix/main.cf
(Postfix主配置文件)中的这一行:将其更改为:
...并重新启动Postfix。
据我所知,这解决了它。(我过去每五分钟获取一次这些日志条目。自从我重新启动Postfix以来已经三十分钟了,并且没有关于“mailman”的新日志条目。)
可能有一些仍在运行的进程正在尝试写入这些位置。使用 fuser 找出它们是什么。
根据日志本身,检查 /etc/rsyslog.conf 并查找 mailman 条目。