Dovecot:重装时杀死许可被拒绝

时间:2017-05-26 09:06:12

标签: linux docker process dovecot

问题

我想在我的服务器上的docker中运行Dovecot服务器。守护程序进程成功启动,但每当我尝试重新加载配置,重新启动或停止守护程序时,我都会收到以下错误:

start-stop-daemon: warning: failed to kill X: Permission denied

其中X是鸽舍过程的PID。我试图找到任何接近我得到的错误的东西都没有成功。

有关环境的更多信息

我基于以下linux版本在docker容器中运行该进程:

Linux 3b71bd992d42 4.10.0-21-generic #23-Ubuntu SMP Fri Apr 28 16:14:22 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

docker镜像由https://github.com/tomav/docker-mailserver中的Dockerfile定义。

我的dovecot本地配置看起来像

disable_plaintext_auth = no
mail_privileged_group = mail
log_path = /var/log/dovecot.log
mail_location = mbox:/var/mail/%u
userdb {
      driver = passwd
}
passdb {
      args = %s
        driver = pam
}
protocols = " imap"

protocol imap {
      mail_plugins = " autocreate"
}
plugin {
      autocreate = Trash
        autocreate2 = Sent
          autosubscribe = Trash
            autosubscribe2 = Sent
}

service auth {
      unix_listener /var/spool/postfix/private/auth {
      group = postfix
      mode = 0660
      user = postfix
      }
}

ssl=required
ssl_cert = < my pem certificate
ssl_key = < my private key

当我运行/usr/sbin/dovecot -c myconfigservice dovecot start

时,使用/usr/sbin/dovecot reloadservice dovecot stop/restart运行dovecot会出现同样的错误

有关我尝试过的内容的更多信息

我看到它的方式,当重新加载/重新启动/停止时,dovecot尝试杀死正在运行的进程,并且在这种情况下无法执行此操作。我尝试的第一件事就是以root身份手动杀死这个进程。这给了我同样的错误......然后我检查了进程的状态。一个简单的ps aux告诉我dovecot进程处于Ss状态。

root         1  0.0  0.0  18244  3380 ?        Ss   08:47   0:00 /bin/bash
root        32  0.0  0.0  18036  2656 ?        Ss   08:47   0:00 /usr/sbin/dovecot -c /etc/dovecot/dovecot.conf
dovecot     34  0.0  0.0   9520  1012 ?        S    08:47   0:00 dovecot/anvil
root        35  0.0  0.0   9652  1056 ?        S    08:47   0:00 dovecot/log
root        37  0.0  0.0  25300  4036 ?        S    08:47   0:00 dovecot/config
root        64  0.0  0.0  34424  2884 ?        R+   08:57   0:00 ps aux

我试着用strace看看拦截调用是什么,但不幸的是得到了

root@3b71bd992d42:/# strace -d -p 32
strace: new tcb for pid 32, active tcbs:1
strace: ptrace_setoptions = 0x11
strace: PTRACE_SEIZE doesn't work

另一个我不再了解的错误。

pstree给了我

bash-+-dovecot-+-anvil
     |         |-config
     |         `-log
     `-pstree

我对这一切有点吃惊,我真的不知道下一步该做什么,除了尝试一个完全不同的图像而不是一个全新安装的dovecot的docker-mailserver,看看是否能修复错误。但这是我想避免的。这不是我第一次运行dovecot服务器,但我从来没有这样的东西。

0 个答案:

没有答案