Postfix

將電子郵件從舊伺服器遷移到新伺服器

  • June 3, 2020

(忍受我,電子郵件設置的整個想法對我來說是新的)

我有一個配置了 postfix、dovecot 和 roundcube 的伺服器,一切都設置正確。

在舊伺服器上(也使用 postfix),所有郵件都在一個文件中,我嘗試將它們遷移到新伺服器(即復製文件到 /var/spool/mail/ 的新路徑 $ user and /var/mail/ $ 使用者)。

如果我從終端使用命令mail,我可以看到新伺服器上的郵件。

但是當我嘗試從圓形立方體訪問時,我得到“郵箱為空”

我可以在文件夾 /home/$user/mail/.Sent/cur/…. 中看到我發送的郵件

但是每封郵件都是一個文件

有什麼我遺漏的嗎,dovecot的問題是因為它使用了另一種郵件結構嗎?

首先,讓我為您澄清一些基礎知識。

  • 郵箱格式是您在舊伺服器上的格式。它實際上是一個文件中的多條消息
  • Maildir 格式是您在主目錄中看到的格式。這些cur和其他文件夾與此格式相關。

如果我猜對了,您在舊伺服器上有一個設置,告訴 Dovecot 使用郵箱格式並從 讀取郵箱/var/spool/mail/$user,在新伺服器中,Dovecot 配置為使用 Maildir 格式並將它們儲存在/home/$user/mail. 這可以在 Dovecot 配置文件中進行配置,但我建議你不要碰它,因為 Maildir 更好,而且 Dovecot 對它有很好的支持。

您所要做的就是mb2md在新機器上安裝一個實用程序,將所有郵箱轉換為 maildir 格式(在此之前,請仔細閱讀其手冊)並將生成的 maildirs 傳輸到適當的位置。

我還建議您檢查 Dovecot 配置文件目前的配置方式,以及在需要時如何更改 maildir 的位置。

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