Dovecot 无法正常工作

Dovecot 无法正常工作

我有一台服务器。我在下面提供了服务器信息。

Linux host.com 2.6.32-531.29.2.lve1.3.11.1.el6.x86_64 #1 SMP Thu Dec 18 06:49:17 EST 2014 x86_64 x86_64 x86_64 GNU/Linux

当我尝试重新启动 Dovecot IMAP 和 POP 时,它失败了并显示以下错误。

Jul 23 01:30:41 platinum dovecot: imap-login: Fatal: master: service(imap-login): child 747903 returned error 127
Jul 23 01:30:41 platinum dovecot: pop3-login: Fatal: master: service(pop3-login): child 747902 returned error 127
Jul 23 01:30:40 platinum dovecot: master: Error: service(imap-login): command startup failed, throttling for 2 secs
Jul 23 01:30:40 platinum dovecot: master: Error: service(pop3-login): command startup failed, throttling for 2 secs
Jul 23 01:30:39 platinum dovecot: master: Warning: /selinux is no longer mounted. See http://wiki2.dovecot.org/Mountpoints

我读了一些手册,尝试忽略这个已安装的文件。但是它仍然不起作用。我可以知道如何解决这个问题吗?

手动重启后以下是日志

Jul 23 02:19:43 platinum dovecot: master: Error: service(imap-login): command startup failed, throttling for 2 secs
Jul 23 02:19:44 platinum dovecot: pop3-login: Fatal: master: service(pop3-login): child 805429 returned error 127
Jul 23 02:19:44 platinum dovecot: imap-login: Fatal: master: service(imap-login): child 805430 returned error 127
Jul 23 02:20:11 platinum dovecot: imap-login: Error: dovecot/imap-login: error while loading shared libraries: librt.so.1: failed to map segment from shared object: Cannot allocate memory
Jul 23 02:20:11 platinum dovecot: imap-login: Error: dovecot/imap-login: error while loading shared libraries: librt.so.1: failed to map segment from shared object: Cannot allocate memory
Jul 23 02:20:11 platinum dovecot: imap-login: Fatal: master: service(imap-login): child 806007 returned error 127
Jul 23 02:20:11 platinum dovecot: master: Error: service(imap-login): command startup failed, throttling for 4 secs
Jul 23 02:21:24 platinum dovecot: imap-login: Error: dovecot/imap-login: error while loading shared libraries: librt.so.1: failed to map segment from shared object: Cannot allocate memory
Jul 23 02:21:24 platinum dovecot: master: Error: service(imap-login): command startup failed, throttling for 8 secs
Jul 23 02:21:24 platinum dovecot: imap-login: Fatal: master: service(imap-login): child 807199 returned error 127

即使从以下解决方案,我也遇到了同样的错误。更新:

Jul 23 02:42:08 platinum dovecot: master: Error: service(imap-login): command startup failed, throttling for 2 secs
Jul 23 02:42:08 platinum dovecot: master: Error: service(pop3-login): command startup failed, throttling for 2 secs
Jul 23 02:42:05 platinum dovecot: master: Warning: /selinux is no longer mounted. See http://wiki2.dovecot.org/Mountpoints
Jul 23 02:42:05 platinum dovecot: master: Warning: /var/named/chroot/etc/named.conf is no longer mounted. See http://wiki2.dovecot.org/Mountpoints
Jul 23 02:42:05 platinum dovecot: master: Warning: /var/named/chroot/var/named is no longer mounted. See http://wiki2.dovecot.org/Mountpoints

卸载 /selinux 后我发现以下错误。

Jul 23 03:00:45 platinum dovecot: pop3-login: Fatal: master: service(pop3-login): child 847454 returned error 127
Jul 23 03:00:45 platinum dovecot: imap-login: Fatal: master: service(imap-login): child 847450 returned error 127
Jul 23 03:00:45 platinum dovecot: pop3-login: Fatal: master: service(pop3-login): child 847449 returned error 127
Jul 23 03:00:45 platinum dovecot: pop3-login: Error: dovecot/pop3-login: error while loading shared libraries: librt.so.1: failed to map segment from shared object: Cannot allocate memory
Jul 23 03:00:45 platinum dovecot: pop3-login: Error: dovecot/pop3-login: error while loading shared libraries: librt.so.1: failed to map segment from shared object: Cannot allocate memory

答案1

根据您提供的信息,我假设您很可能正在运行 RHEL 6 或 CentOS 6。

也许您应该先尝试手动启动 dovecot 服务,然后再次发布日志。

- 更新

好的。这些步骤应该可以解决问题。

  1. 使用命令编辑文件vi /etc/dovecot.conf

  2. 找到具有login_process_size

  3. 取消注释并修改为login_process_size = 64

  4. service dovecot stop保存文件并使用和启动服务service dovecot start

我从中找到了这个解决方案这里

答案2

您可以发布doveconf -n输出吗?

另外,如果你看到:

Jul 23 01:30:39 platinum dovecot: master: Warning: /selinux is no longer mounted. See http://wiki2.dovecot.org/Mountpoints

您应该使用doveadm mount list列出所有分区(dovecot 使用的分区应该以 ! 开头)和doveadm mount remove /selinux。这可能会解决您的问题。

相关内容