Courier-IMAP to Dovecot migrálás [Megoldva]

Fórumok

Egy sok email fiókot (>100) tartalmazó linuxos email szerver másik, új szerverre migrálásához kérek segítséget, sok postafiók nagy méretű. A cél az lenne, hogy az email kliens ne vegyen észre semmit, csak az új leveleket töltse le. A kliensek szinte kizárólag Outlookot használnak.

Ezt már sikerült megoldani egy szerveren az eredeti fájlok rsync-kel áthúzásával és egy perl szkript lefuttatásával (ez megcsinálta  a dovecot formátumú indexelést
https://github.com/dovecot/tools/blob/main/courier-dovecot-migrate.pl).

Jelenlegi esetben az alábbiakat próbáltuk:

A forrás szerveren Courier-IMAP fut INBOX. prefixszel. Az új szerver Dovecot alapú lesz és nem lesz prefixe. A dovecot beállításain nem változtathatunk (a webmail és a spamszűrő integrálása miatt). Emiatt UTF-8 helyett mUTF-7 kódolással kell az adatoknak a helyükre kerülniük.

Készítettünk saját bash szkriptet ami kilistázza "doveadm mailbox list" segítségével az összes mappát, megkeressük a fájlrendszeren és a subscriptions fájlban, majd átnevezzük. A chmod / chown itt is rendben. A probléma: az Outlook-ban amikor kivesszük az INBOX IMAP prefix-et, akkor valamiért létrehoz három IMAP folder-t ilyen nevekkel:

INBOX.Elküldött elemek
INBOX.Törölt elemek
INBOX.Levélszemét

Még olyan gond is előjött, hogy ha a forrás szerveren az IMAP folder nem volt konzisztens (pl. 1-1 fájlt nem tudtunk benne olvasni), akkor az Outlook ezeket nem engedte törölni ("nincs jogosultsága") és az új leveleket sem töltötte le.

Ami úgy-ahogy bevált az az IMAPSync, ezzel minden kliens levelét áthúztuk, de (mivel az id-k megváltoztak) a kliens minden levelet letöltött. Aki POP3-at használ (és van akinek nagyon nagy a fiókja) nem töltődhet le az összes levele (mivel így minden levele duplikálódna).

Még ezen leírások alapján próbálkozunk:

https://serverfault.com/questions/605342/migrating-from-any-imap-pop3-s…
https://doc.dovecot.org/admin_manual/migrating_mailboxes/#migrating-mai…

Van ezzel valakinek tapasztalata? Hogyan lehetne olyan migrálást csinálni a két szerver között, ami megőrzi az UUID-kat, és nem tölt le POP3 kliens mindent újra, továbbá az IMAP kliensek is "csak" az almappákat, és pl. a beérkező üzeneteket nem? Továbbá, nem jövünk rá miért hozta létre az Outlook azokat az INBOX prefixű mappákat amikor fájl szinten próbálkoztunk. Ezt szeretnénk elkerülni.

Előre is köszi a segítséget !

 

Hozzászólások

Amikor anno átáltam imapcopy-val csináltam.

Évekkel ezelőtt egy csomó olyan migrációt csináltam, ahol a prefix-et szándékosan nem változtattuk. (Maradt INBOX, és "." a szeparátor, stb.)
Ezek csont nélkül, "észrevétlenül" átmentek a klienseken.

A prefix észrevétlen változtatására nincs gyakorlatom. Félek tőle, hogy talán nem is lehetséges, ismervén egyes levelezőkliensek tulajdonságait.

Én első körben csinálnék egy Courier -> Dovecot migrációt, majd ha mindenki sikeresen túlélte, akkor utána kavarnék a namespace-ekkel.

Közben átgondolva nem fogunk ekkora lépést tenni, azaz nem lesz olyan levelezőrendszer ami megköveteli az üres IMAP prefix-et , illetve a dovecotban az utf-8 használatával megoldódni látszik a többi probléma.
Azért köszi a segítséget !