Imap

Dovecot Migration 和舊郵件

  • August 1, 2017

我正在將我的郵件從舊伺服器遷移到新伺服器,配置很好(僅限 mysql 虛擬帳戶和 imap),帶有 dovecot 和 postfix。它已經為其他使用者執行,我只想將舊帳戶從舊伺服器合併到新伺服器。

遷移很順利,我只是想知道如何在 UA 客戶端中“顯示”所有舊郵件。我的意思是,是否有任何dovecot 索引文件或可以重新創建、銷毀的文件,以便所有舊郵件都“標記”為郵件?

Maildir 實際上使用了一種獨特的格式,這使得這很容易。new/如果您希望它顯示為新郵件,只需將郵件放在郵件使用者 mailroot 內的目錄中。否則它進入cur/目錄。

我嘗試了接受的答案,但失敗了 - 正在使用的鴿舍版本可能相距太遠,我們還切換了底層 MTA。所以這裡有一個更健壯的解決方案:doveadm import

假設您正在託管域hosts.tld的電子郵件,並且存在用於登錄local.account@hosted.tld的帳戶(或者可能只是ruth),並且來自先前伺服器的備份是 MailDir 格式,並且可以在文件夾結構中使用,例如**/tmp/TRANSFER/ domain / account /Maildir**然後您可以將它們導入到您的新 dovecot 主機中

$ doveadm import -u local.account@hosted.tld maildir:/tmp/TRANSFER/hosted.tld/local.account/Maildir "" all

更一般地說:

$ doveadm import -u LOCAL_USER FORMAT:PATH "" all

這一切都可以從精美的手冊中窺見一斑。我們花了兩次嘗試才發現簡單地使用“”(空目標郵箱)是我們真正想要的 ;-)

如果新舊伺服器同時執行並且您的帳戶已使用doveadm sync正確設置,您甚至可能比我們有更多的運氣,而無需事先傳輸文件。

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