dovecot 启动“地址已在使用中”错误

Nic*_*lds 4 email centos dovecot

我目前正在尝试在我的专用服务器 (Centos5) 上使用一些“me@mydomain.com”地址。

为此,我正在尝试使用 启动 dovecot /etc/init.d/dovecot start,但收到以下错误消息:

Starting Dovecot Imap: Error: service(pop3-login): listen(*, 110) failed:
Address already in use
Error: service(pop3-login): listen(*, 995) failed: Address already in use
Error: service(imap-login): listen(*, 143) failed: Address already in use
Error: service(imap-login): listen(*, 993) failed: Address already in use
Fatal: Failed to start listeners
                                                           [FAILED]
Run Code Online (Sandbox Code Playgroud)

有些东西已经在监听这些端口,但我不知道是什么。我的服务器上之前安装了Qmail,所以我删除了它,但并没有解决问题。

你知道如何解决这个问题吗?

小智 8

刚刚在 AWS Linux 实例上进行了升级,dovecot 不会以 Address already in use 错误开始(与原始海报相同)。

netstat 和 lsof 没有显示任何连接到这些 TCP 端口的进程。

最终我发现作为升级的一部分安装了 portreserve 包。它有一个配置文件 /etc/portreserve/dovecot,其中列出了有问题的端口。我将文件重命名为 /etc/portreserve/dovecot~,现在一切正常。

根据https://bugzilla.redhat.com/show_bug.cgi?id=1570282因为 portreserve 只对端口执行 bind(),而没有执行 listen() 它不会出现在 lsof 或 netstat 中. 这使得故障排除非常棘手。


Flu*_*lup 4

此命令将显示您正在收听的内容:

$ sudo netstat -lnp | grep 993
tcp        0      0 0.0.0.0:993             0.0.0.0:*               LISTEN      4470/imap-login
Run Code Online (Sandbox Code Playgroud)

最后一列提供了绑定到该特定端口的进程的 PID 和名称。