Ich musste gerade einen Haufen E-Mail Adressen von einem 1und1 Account auf einen eigenen Server umziehen. Das ganze war dank imapsync ziemlich schnell erledigt. Ein paar Hürden waren allerdings doch zu nehmen, daher poste ich hier mal den kompletten Befehlsaufruf, mit dem es bei mir gut funktionierte.
Beim Umzug wollte ich auf dem Ziel neben den von Usern angelegten Ordner nur noch Standard-Namen wie Sent, Drafts, Spam und Trash (welche in Roundcube auch mit lokalisierten Namen angezeigt werden). Daher umfasst mein Befehlsaufruf auch Migrationen von Ordner wie Gesendete Objekte nach Sent, Entwürfe nach Drafts, usw..
imapsync \ # verbindungsdaten --host1 --user1 "" --password1 "" --authmech1 PLAIN \ --host2 --user2 "" --password2 "" --authmech2 PLAIN \ # Statistiken auslassen, Geschwindigkeit gewinnen --nofoldersizes --skipsize --fast \ # nur über Message-ID matchen --skipheader '^(X-|Received|MIME-|Content-|Disposition-|From|Cc|Reply-|Subject|To|DomainKey|Date).*' \ --useheader Message-ID \ # diese Ordner nicht syncen --exclude '(?i)\b(Junk|Spam|Trash|Papierkorb)\b' \ # IMAP flags die nicht Standard sind ignorieren (beginnen mit \) --regexflag 's/\\\\(?!Answered|Flagged|Deleted|Seen|Recent|Draft)[^\s]*\s*//ig' \ # Ordner die im Ziel anders benannt sein sollen --regextrans2 's/Gesendete Objekte$/Sent/' --regextrans2 's/Entw&APw-rfe$/Drafts/'
Beim ersten Test lohnt es sich noch den Parameter –dry anzuhängen. Die Homepage von imapsync zeigt, wie man in Massen E-Mails abarbeitet.