Thomas Hackbarth
Fullstack IT Nerd

Lessons learned: E-Mail Migration

Zur Übersicht

E-Mails sind heutzutage nicht mehr aus dem Alltag wegzudenken. Viele Menschen benutzen dabei einen der großen E-Mail-Anbieter wie Google Mail oder GMX. Bei mir und Kollegen aus der IT ist es aber eher üblich sich eine eigene Domain zu registrieren und den E-Mail-Service eines Anbieters seiner Wahl zu nutzen. Einige Menschen hosten sogar ihren eigenen E-Mail-Server.

Doch was macht man eigentlich, wenn man den Anbieter wechseln oder sogar selbst hosten möchte? Im Gegenzug zum Umzug von Webseiten und Datenbanken wird über den Umzug von E-Mail-Daten weniger geredet. Da mir lange Zeit kein möglicher Ansatz zur Migration von Anbieter A zu Anbieter B bekannt war, habe ich mich sehr lange nicht getraut den Wechsel anzugehen.

Aber wie migriere ich denn jetzt E-Mails?

Nach längerer Suche bin ich auf das Programm imapsync von Gilles Lamiral gestoßen. Mit diesem kleinen Programm kann man einfach alle E-Mails von einem E-Mail-Server zu einem anderen Server kopieren. Hat man sich das Programm installiert, kann man es einfach in einem Terminal aufrufen. Hier ein kleines Beispiel:

./imapsync \
    --host1 imap.server1.de \
    --user1 username1 \
    --password1 "password1" \
    --host2 imap.server2.de \
    --user2 username2 \
    --password2 "password2"

Auf der Website des Programms finden sich noch weitere Beispiele und Anleitungen. Wer das Programm öfter nutzt, sollte sich überlegen, ob er dem Author für seine Mühen danken will und eine Lizenz für das Programm kauft.

Was kann man noch mit dem Programm machen?

Ich benutze imapsync auch noch zum Sichern meiner E-Mails. Mithilfe eines Docker-Containers kann man sich einen lokalen IMAP-Server aufsetzen und seine E-Mails in den lokalen Server sichern. Um den Container zu starten, kann folgender Aufruf genutzt werden:

docker run --rm \
    --publish 127.0.0.1:143:143 \
    --volume <Pfad>:/srv/mail \
    --name imap dovecot/dovecot

Die Sicherung kann dann mit folgendem Aufruf gestartet werden:

./imapsync \
    --host1 <E-Mail Server> \
    --user1 <Username> \
    --password1 <Password> \
    --host2 localhost \
    --user2 backup \
    --password2 pass \
    --delete2

Alternativen

Um sein IMAP Konto zu sichern, kann man auch viele andere Tools einsetzen. Ich habe auch schon gute Erfahrungen mit imap-backup gemacht.