我正在新操作系统中安装新的邮件服务器(Postfix/Dovecot+Maildir)。
使用 Thunderbird(或 Squirrelmail)我可以发送邮件,但我的收件箱是空的,即使我可以在 中看到它们/home/<mailuser>/Maildir/new
。
可能是什么问题?如有必要,我将附加任何配置文件。
编辑:dovecot 配置mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/
就像 Damiano 所说的那样,Postfix 和 Dovecot 邮件文件夹不匹配。
答案1
你可能不是Postfix 和 Dovecot 共享相同的邮箱位置/文件夹和/或邮箱传递方式(MBOX 与 MDIR)。因此,Postfix 正确地在“/home/mailuser/Maildir“(您会在“新”子文件夹下看到您的邮件到达),但是由于 dovecot 正在其他地方搜索……它找不到此类邮件(因此您会收到“无邮件”信息)。
作为第一项检查,您应该:
- Postfix:检查 /etc/postfix/main.cf 中的 home_mailbox 参数:
# The home_mailbox parameter specifies the optional pathname of a
# mailbox file relative to a user's home directory. [...] Specify
# "Maildir/" for qmail-style delivery (the / is required).
#
home_mailbox = Maildir/
- Dovecot:按照@Kondybas 的建议检查 mail_location 参数(在 CentOS 6.5 中,位于 /etc/dovecot/conf.d/10-mail.conf):
# See doc/wiki/Variables.txt for full list. Some examples:
#
# mail_location = maildir:~/Maildir
# mail_location = mbox:~/mail:INBOX=/var/mail/%u
# mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
#
# <doc/wiki/MailLocation.txt>
#
mail_location = maildir:~/Maildir
上述两个指令告诉 Postfix 和 Dovecot 将收到的邮件存储为“用户N",其主目录是/home/用户 N,在 Maildir 结构下/home/userN/Maildir
对于“虚拟”用户(用户不是在机器上定义了一个正确的 unix 帐户),在这种情况下,Postfix 和 Dovecot 也需要共享获取/计算主目录的方法用户N