Email

更改郵件目錄的位置

  • June 26, 2021

標準 Linux 安裝提供了一個 maildir /var/spool/mail/$user(實際上是一個包含所有電子郵件的文件,而不是“郵件目錄”),由/var/mail/.

我將在我的安裝中設置託管電子郵件,並且我想將郵件儲存在一個單獨的分區中,該分區可以附加到文件系統以防伺服器重新映像(我已經對諸如此類的服務實施了這種災難恢復措施mysql) . 單獨的文件系統是/home.

所以我希望系統郵件被傳遞到/home/$user/.mail[/](最後/在括號中,因為我不確定是否將郵件包含在目錄中)。

目前,我通過將所有電子郵件重定向到我的 ISP 的電子郵件來為我自己的域執行電子郵件,這不會永遠存在(如果我更改 ISP,我必須將所有電子郵件遷移到新的 ISP),因此指示 Postfix 將所有電子郵件重定向*@example.orguser@example.com.

我正在考慮Dovecot用作電子郵件伺服器,因為它完全支持 SSL。

所以首先,在配置 Dovecot 之前,我如何告訴系統將郵件發送到與 /var/spool 不同的目錄中?請注意,cron 會定期向root作業不寫入時發送電子郵件/dev/null,因此配置必須是系統範圍的。

建議使用Maildir目錄格式而不是舊的 mbox 格式來儲存電子郵件。Dovecot 很好地支持 Maildir 格式,並且具有一些優點(沒有鎖定,允許輕鬆增量備份和恢復單個消息。)因此您需要分配一個目錄。

將郵件儲存在~/Maildir使用者主目錄中的目錄中是慣例,但沒有什麼能阻止您使用另一個(隱藏的)目錄。

您可以使用 Postfix home_mailbox設置配置 Maildir 格式及其位置:

sudo postconf -e "home_mailbox = Maildir/"

這也是為大多數 Dovecot 軟體包配置的預設位置。

另一種方法是將 Postfix 配置為將本地郵件傳遞留給 Dovecot LDALMTP

然後配置 Dovecot 以在正確的位置查找郵件:

mail_location = maildir:~/Maildir

如果郵件使用者實際上擁有本地使用者帳戶(而不是僅作為虛擬郵件使用者存在),您可能希望填充/etc/skellMaildir 和新使用者的歡迎消息。

引用自:https://serverfault.com/questions/639908