我们正在运行 CentOS 7,刚刚将 Postfix 升级到版本 3。升级后 Postfix 无法启动。首先,日志中存在兼容性问题,但我们按照建议解决了它(postconf compatibility_level=2
)。
更大的问题是
postfix: /usr/libexec/postfix/post-install: Error: /etc/postfix/postfix-files is not a file
完全卡在那里。我们尝试设置chmod 777
,/etc/postfix
尝试使用postfix-install
,但都无济于事。
答案1
终于找到了解决方案。/etc/postfix/postfix-files
缺少了,所以我们只使用:
touch /etc/postfix/postfix-files
...问题解决了。
答案2
更新 postfix 后出现同样的问题http://repos.oostergo.net/7/postfix-3.2/
但是该文件似乎已安装,因此比简单地创建空文件更好的解决方案可能是将其复制到期望找到它的/usr/share/postfix/
位置:post-install
cp -a /usr/share/postfix/postfix-files /etc/postfix/
答案3
Postfix 在指定的目录中查找 postfix-files 文件元目录配置选项。有些软件包似乎将其安装到/usr/share/postfix
。我的 main.cf(可能还有你的)将其设置为/etc/postfix/
,这似乎是 postfix 在没有任何配置的情况下使用的默认设置。(将其放在其他地方的软件包将正确的路径放在其默认的 main.cf 中,但如果您不使用其默认配置而是使用自己的文件,这当然没有帮助。)解决方案是在 main.cf 中将其设置为安装包实际放置的位置,例如
meta_directory = /usr/share/postfix