Dovecot
メールサーバーにPostfix
を設定しました。私のメールサーバーはMaildir
形式を使用しています:
home_mailbox = Mail/inbox/
ユーザーのメールディレクトリは次のようになります。
$HOME/Mail/inbox
$HOME/Mail/drafts
$HOME/Mail/sent
$HOME/Mail/trash
Dovecot
にメールボックスを設定しました
mail_location = maildir:~/Mail
namespace inbox {
mailbox drafts {
special_use = \Drafts
}
mailbox sent {
special_use = \Sent
}
mailbox trash {
special_use = \Trash
}
}
ここでの問題は、Dovecot
は定義されたメールボックスを使用せず、先頭に.
を付け、最初の文字を大文字にした独自のメールボックスを作成することです。
$HOME/Mail/.Drafts
$HOME/Mail/.Sent
$HOME/Mail/.Trash
さらに、$HOME/Mail/inbox
をinbox
として使用する代わりに、$HOME/Mail
を受信トレイとして使用します。つまり、既存のcur/new/tmp
を使用するのではなく、$HOME/Mail/
に直接$HOME/Mail/inbox
ディレクトリを作成しました。
$HOME/Mail/cur
$HOME/Mail/new
$HOME/Mail/tmp
簡単に説明すると、必要なのは次のとおりです。
Maildir
がメールを配信する既存のPostfix
フォルダー構造と、通常のフォルダー(drafts
、sent
、...)があります。
$HOME/Mail/inbox/{cur,new,tmp}
$HOME/Mail/drafts/{cur,new,tmp}
$HOME/Mail/sent/{cur,new,tmp}
$HOME/Mail/trash/{cur,new,tmp}
Dovecot
に正しいディレクトリを使用するように指示するにはどうすればよいですか?
デフォルトでは、DovecotはMaildir ++ディレクトリレイアウトを使用してメールボックスディレクトリを整理します。これは、すべてのフォルダが〜/ Maildirディレクトリ内に直接あり、次のことを意味します。
~/Maildir/new, ~/Maildir/cur and ~/Maildir/tmp directories contain
the messages for INBOX.
あなたはレイアウトについてもっと読むことができます ここ
したがって、あなたが不満を言うのは標準的な振る舞いです。それでも、LAYOUT
およびINBOX
オプションを使用してレイアウトを変更できます。必要に応じて、cur
、new
、tmp
をInbox
内に含めるには:
$HOME/Mail/inbox/{cur,new,tmp}
/etc/dovecot/conf.d/10-mail.conf
で次のオプションを指定できます。
mail_location = maildir:~/Mail:INBOX=~/Mail/inbox:LAYOUT=fs
mail_location
を次のように変更します。
mail_location = maildir:~/Mail:LAYOUT=fs
参照: Dovecot Docs
~/Maildir/new
、~/Maildir/cur
、および~/Maildir/tmp
ディレクトリには、INBOX
のメッセージが含まれています。~/Maildir/.folder/
はメールボックスですfolder
:LAYOUT=fs
をmail_location
に追加して、fs
レイアウトを使用することもできます。これにより、フォルダ構造は次のようになります。~/Maildir/new
、~/Maildir/cur
、および~/Maildir/tmp
ディレクトリには、Maildir++
と同様に、INBOX
のメッセージが含まれます。 ~/Maildir/folder/
はメールボックスフォルダですDovecot maildirsを使用する最良の方法は、常にdovecotにパッケージされているツールを介してそれらにアクセスすることです。仮想メールボックスのpostfixとdovecotの組み合わせは次のとおりです。
これは、postfix maildirを理解するようにdovecotを構成する方法に対する答えではなく、電子メールディレクトリを操作するための代替方法です。 dovecotが期待する場所にすべてが存在するようにファイルを移動するだけで、この方法に簡単に移行できます。
/etc/postfix/master.cf
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient}
/etc/postfix/main.cf:
virtual_transport = dovecot
virtual_mailbox_domains = hash:/etc/postfix/virtual/domains
/ etc/postfix/virtual/domains:
example.com none
example.net none
(ファイルに対してpostmap
を実行することを忘れないでください。)
/etc/dovecot/dovecot.conf:
auth default {
mechanisms = plain
userdb static {
args = uid=vmail gid=vmail home=/var/mail/%d/%n
}
passdb passwd-file {
args = /etc/dovecot/passwd
}
}
(グループvmail
でユーザーvmail
を作成することを忘れないでください。)
/ etc/dovecot/passwd:
[email protected]:{PLAIN}yoursecretpassword
もちろん、これはすべて(実際の構成から派生した)単純な例であり、任意のツールで任意のユーザーバックエンドを使用して管理できます。
dovecot 2.1以降の場合
namespace {
type = private
separator = .
inbox = yes
mailbox Trash {
auto = subscribe # autocreate and autosubscribe
special_use = \Trash
}
mailbox Drafts {
auto = subscribe
special_use = \Drafts
}
mailbox Sent {
auto = subscribe
special_use = \Sent
}
mailbox Junk {
auto = subscribe
special_use = \Junk
}
}
カスタム仮想メールボックスを追加することもできます。とても素敵なドキュメントはここにあります: http://wiki2.dovecot.org/MailboxSettings