Letzte Aktualisierung am 20.07.2022, 15:07:22 Uhr
Es steht der Umzug einiger IMAP Postfächer von Anbieter A zu Anbieter B an. Im Regelfall bindet man bei Verwendung eines E-Mail-Programms das neue Postfach zusätzlich ein. Anschließend verschiebt man die jeweiligen Verzeichnisse und E-Mails. Dies ist in diesem Szenario nicht möglich. Da es sich aber um keine geschäftlichen Rechner handelt, sondern um Private, rühren wir diese weder persönlich noch per Fernwartung an. Zudem soll im Vorfeld des Umzugs einmal der Datenbestand zwischen den jeweiligen Postfächern abgeglichen werden, damit bei der Umzug des MX-Eintrags nur noch wenige Objekte zu kopieren sind.
Bei meinen Recherchen bin ich auf das Tool Imapsync gestoßen. Dieses ist Open Source und der Quellcode kann auf GitHub eingesehen werden. Nachdem ich keine funktionierende Anleitung gefunden habe, habe ich für diesen Artikel entschieden. Es gibt zwar im Repository für die gängigen Betriebssystemen Anleitungen, aber auch die sind nicht ganz aktuell.
Ausgangslage ist eine virtuelle Maschine mit Ubuntu 20.04 LTS. Folgende Befehle nacheinander ausführen:
apt update apt upgrade -y apt install -y git make gcc apt install -y apt-file cpanminus libc6-dev libssl-dev apt install -y libperl-dev zlib1g-dev libnet-ssleay-perl cpanm App::cpanminus Authen::NTLM CGI Compress::Zlib Crypt::OpenSSL::RSA Data::Dumper Data::Uniqid Dist::CheckConflicts Encode Encode::IMAPUTF7 File::Copy::Recursive File::Tail IO::Socket::INET IO::Socket::INET6 IO::Socket::SSL IO::Tee JSON JSON::WebToken LWP::UserAgent Mail::IMAPClient Module::ScanDeps PAR::Packer Pod::Usage Readonly Regexp::Common Sys::MemInfo Term::ReadKey Test::MockObject Test::More Test::Pod Unicode::String cd /usr/local/src git clone https://github.com/imapsync/imapsync.git cd imapsync make install
Die Installation der Voraussetzungen mit Hilfe von cpanm kann je nach Systemleistungen mehrere Minuten dauern. Zeit für einen Kaffee oder Tee. 🙂
Abschließend darf natürlich der Funktionstest nicht fehlen:
imapsync -testslive Creating directory LOG_imapsync (current directory is /usr/local/src/imapsync) Here is imapsync 2.200 on host ubuntu-2gb-hel1-1, a linux system with 0.7/1.9 free GiB of RAM with Perl 5.30.0 and Mail::IMAPClient 3.43 Transfer started at Wednesday 20 July 2022-07-20 13:04:30 +0000 UTC ...
Das Tool startet mal ohne Fehlermeldung. 🙂
Die Syntax bzw. die Nutzung des Tools ist recht schlicht gehalten. Wichtig ist, dass bei Sondernzeichen sind die Werte in Hochkommas zu setzen. Daher habe ich mich entschlossen alle Werte gleich zu behandeln.
imapsync --dry --delete2 --delete2folders \ --host1 'test1.lamiral.info' --user1 'test1' --password1 'secret1' \ --host2 'test2.lamiral.info' --user2 'test2' --password2 'secret2'
Viel Spaß beim Ausprobieren. 🙂
Danke für die Anleitung. Falls jemand unter Ubuntu 18.04 Fehlermeldungen bei der cpanm Installation von PAR::Packer bekommt: apt install libpar-packer-perl
Vielen herzlichen Dank für die Anleitung.
Hat wunderbar geklappt!
Nice, herzlichen Dank! Mit deiner Anleitung hat es endlich geklappt. Stand lange vor dem gleichen Problem der Installation. Hat bei mir übrigens nur in Ubuntu funktioniert, auf Debian ist es irgendwie schief gegangen. Hab es mit den Schritten oben erfolgreich in Ubuntu innerhalb von WSL gestartet.
Kann ich imapsync dazu bringen, ein vorab erstelltes „datafile“ zu nutzen?
Irgendwie wird die Struktur eines derartigen Files zwar beschrieben, aber wie übergebe ich es imapsync?
Guten Abend Jan,
ich kann leider nichts mit dem Begriff „datafile“ anfangen. Was verstehst du darunter?
Unabhängig davon beschreibe doch einmal dein Szenario und das Ziel.
Gruß,
Daniel