当我使用 telnet 界面和 web 界面发送电子邮件时,出现上述错误。我正在使用 qmail。有人能帮忙吗?
这是我运行 qmailctl stat 时得到的结果
>[root@pristine qmail-send]# qmailctl stat
/service/qmail-send: up (pid 20193) 2952 seconds
/service/qmail-send/log: up (pid 20195) 2952 seconds
/service/qmail-smtpd: up (pid 20199) 2952 seconds
/service/qmail-smtpd/log: up (pid 7692) 1 seconds
/service/qmail-pop3d: up (pid 20203) 2952 seconds
/service/qmail-pop3d/log: up (pid 7693) 1 seconds
messages in queue: 0
messages in queue but not yet preprocessed: 0
在 smtp 进程上运行 ps aux 后,我得到了以下信息
ps aux | grep -i qmail
root 5606 0.0 0.0 1344 224 pts/1 S 13:24 0:00 readproctitle service errors: ...ure?supervise: fatal: unable to acquire qmail-pop3d/supervise/lock: temporary failure?supervise: fatal: unable to acquire log/supervise/lock: temporary failure?supervise: fatal: unable to acquire qmail-smtpd/supervise/lock:
root 5674 0.0 0.0 1344 224 pts/1 S 13:24 0:00 readproctitle service errors: ...ry failure?supervise: fatal: unable to acquire qmail-pop3d/supervise/lock: temporary failure?supervise: fatal: unable to acquire log/supervise/lock: temporary failure?supervise: fatal: unable to acquire log/supervise/lock: t
root 5679 0.0 0.0 1352 268 pts/1 S 13:25 0:00 supervise qmail-send
root 5689 0.0 0.0 1352 268 ? S 13:25 0:00 supervise qmail-pop3d
root 5691 0.0 0.0 1352 264 ? S 13:25 0:00 supervise qmail-smtpd
root 11432 0.0 0.0 1608 456 pts/1 S 13:36 0:00 grep -i qmail
root 11600 0.0 0.0 1372 284 ? S May15 0:00 tcpserver -H -R -v -c100 0 110 qmail-popup mail.pristine.gm /home/vpopmail/bin/vchkpw qmail-pop3d Maildir
vpopmail 11601 0.0 0.0 1544 456 ? S May15 0:00 /usr/local/bin/tcpserver -v -R -l mail.pristine.gm -x /etc/tcp.smtp.cdb -c 30 -u 510 -g 505 0 smtp /var/qmail/bin/qmail-smtpd mail.pristine.gm /home/vpopmail/bin/vchkpw /usr/bin/true
qmaill 11615 0.0 0.0 1496 328 ? S May15 2:01 multilog t s100000 n20 /var/log/qmail/qmail-pop3d
答案1
我遇到了同样的问题。错误是由于 ../qmail/queue 文件夹中的权限问题造成的。通常只有用户 qmailq 才能在 mess 文件夹中创建队列。但在这种情况下,vpopmail 会尝试创建一个队列。
答案2
我在 OpenBSD 上的 qmail 安装中遇到了这个问题,并意识到这是因为qmail-queue
二进制文件被标记为 SetUID(它需要它),
# ls -l /var/qmail/bin/qmail-queue
-rws--x--x 1 qmailq qmail 21240 Mar 31 12:52 qmail-queue
#
同时磁盘分区持有的标志qmail-queue
被nosuid
设置,
# cat /etc/fstab
...
disk_id_string.e /var ffs rw,nodev,nosuid 1 2
因此qmail-queue
无法成为qmailq
将项目放入队列的用户。通过删除它nosuid
并重新启动(或只是重新安装/var
)解决了此问题。