私のメールサーバーにはPostfix
++++Maildir
がありますDovecot
。 1つ以上のクライアント(Thunderbird)を介して自分のメールボックスにリモートIMAP
でアクセスしています。IMAP
また、サーバーからローカル(Maildir
)アクセス用にmuttを設定しました。
Thunderbirdに接続しIMAP
、同時にmutt
サーバー上でローカルに起動するとMutt
混乱しているようです。 Thunderbirdでメッセージを移動したときにIMAP
何かMutt
が変更されたことを発見して報告しました。
Mailbox was externally modified. Flags may be wrong
問題は一方的なようです。 Thunderbirdでメッセージを操作すると、Mutt
問題なく変更が登録されます。
だから私の質問は次のようになります
クラッシュ/データの破損/エラーなしでリモートIMAP
クライアントとローカルMutt
クライアントにアクセスする方法は?Maildir
重要:
Mutt
ローカルアクセスのソリューションを探しています。この議論以外の理由で、私はMutt
以下を介してMaildirにアクセスしたくありません。IMAP.
注:
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 形式は共同アクセス用に設計されています。