syslogメールのチェックツールを構築しているのだが、Curier-imapのMaildir構造がいまいち理解できていない。ちょっと調べて書いてみる。
MaildirはQmailなどでも使われているメール一通に1ファイルを割り当てる保存形式。各ユーザのホームディレクトリ配下にMaildirというディレクトリが作成され、その内部にメールを保存。Maildirの構造は下記の様になる。
新着メールはnewディレクトリへ生成され、既読メールはcurディレクトリへ移動される。tmpディレクトリは、メールの移動中などに一時保存されるディレクトリ。
また、既読メールファイルにはファイル名の最後にSが追加される。削除されたメールにはファイル名の最後にTが追加される。
自分の環境ではnewディレクトリが機能しておらず、全てのメールがcurで管理されていた。このあたりよく分かっていない…。*1
また、Courier-imapの場合には、courierimapacl、courierimapkeywords、courierimapuiddbのファイルがMaildir内に保存される。
- courierimapacl
- フォルダの権限関係を記述してある様子。owner aceilrstwx 等、記述されている。
- courierimapkeywords
- :listにメールのファイル名等が記載されている。迷惑メール等のマークに対応している模様。
- courierimapuiddb
- 受信したメールの連番とファイル名のリスト
■参考サイト様
The Work of a Courier Administrator(注:PDF)
Courier-imapの素人研究 - MacのCommonLISPで3D
*1:追記 2010/05/19 14:56 ちゃんと新着メールはnewディレクトリに届いています。Thunderbirdなどで開くだけでcurディレクトリに移動するみたいです