我的邮件服务器上有Postfix
+ Maildir
+ Dovecot
+ 。我正在通过一个或多个客户端 (Thunderbird)IMAP
远程访问我的邮箱。IMAP
此外,在服务器上我已将 mutt 配置为本地 ( Maildir
) 访问。
当我与 Thunderbird 连接IMAP
并同时mutt
在服务器上本地启动时,Mutt
似乎很困惑。当我在 Thunderbird 中移动消息(通过IMAP
)时,Mutt
注意到某些内容发生了变化并报告:
Mailbox was externally modified. Flags may be wrong
问题似乎是片面的。当我操作 中的消息时Mutt
,Thunderbird 会注册更改并且没有任何问题。
因此我的问题是:
如何在没有任何冲突/数据损坏/错误的情况下进行远程IMAP
客户端和本地Mutt
客户端访问?Maildir
重要的:
我正在寻找一种Mutt
本地访问的解决方案。由于本讨论之外的原因,我不想Mutt
通过以下方式访问 MaildirIMAP.
边注:
我不明白为什么Mutt
抱怨邮箱被外部修改。毕竟,Postfix 在发送新电子邮件时也会修改邮箱。
答案1
Maildir 在邮件文件名中存储一些数据。该数据包括消息 ID、大小(带和不带换行符)和标志。当打开未读消息时,它会从 移至new
且cur
名称从
1406379300.M375059P35208.R93M.lan,S=679,W=699
到
1406379300.M375059P35208.R93M.lan,S=679,W=699:2,S
IMAP 服务器可以跟踪导致它使用 maildir 的索引文件来访问某些邮件的更改。当mutt
直接从文件系统访问消息时,冲突是不可避免的。
答案2
Mutt 不会“抱怨”外部修改的邮箱,它只是通知用户导致同时访问同一邮箱的更改。某些缓存的标志可能不同步,但通常这不是问题。您可以随时重新打开邮箱来重新阅读。新邮件的公告方式不同,因此在这种情况下看不到此消息。
通过另一个 ssh 会话或网络挂载打开邮箱时也会发生类似的情况,它不是 IMAP 特定的。
不存在冲突/数据损坏/错误。 mbox 和 maildir 格式都是为同时访问而设计的。