Meine (vorläufig) gescheiterte Migration zu mykolab.com

Update vom 26.03.2014:

MyKolab hat sich bereits gestern Abend und nochmals heute Morgen mit einer Reihe von Vorschlägen bei mir gemeldet, wie die beschriebenen Probleme behoben werden bzw. behoben werden können. Auch Rick Sanders hat gleich zurückgeschrieben, dass er in seinen IMAP tools die bereits bestehende Korrektur nicht Standard-konformer Datumsformate noch weiter verbessern wird. Schön!

Die Gründe

Ich habe versucht, mit meinen Emails und Kontakten und Kalendern, von Cyon zu MyKolab zu zügeln. Die Gründe dafür in Kürze:

  • Schon seit einiger Zeit hat die Computerzeitschrift c’t immer wieder darauf hingewiesen, wie vorbildlich das Groupware-Angebot von MyKolab betrieben wird[1]. Im neuesten c’t Wissen zum Thema «Sichere Email» haben die Heise-Redakteure dann auch noch eine Aktion mit mykolab.com arrangiert, dank der Leser im ersten Jahr 30% der Kosten für das Angebot sparen.
  • Ende Januar 2014 habe ich bei meinem Host cyon.ch Daten verloren, weil ich beim Update meiner ownCloud-Installation (die Cyon ohnehin nicht gerne auf ihren Double-Hostings hat) der Dokumentation gefolgt bin, ohne das Resultat der einzelnen Befehle vorher zu überprüfen[2]. Den angekündigten Restore konnte das Unternehmen dann leider nicht vornehmen, weil es gerade ein Problem mit dem Storage gab[3].
  • Der Betrieb von ownCloud ist auf meinem Hosting nicht so pflegeleicht, wie ich ihn mir wünsche, weil die mit ownCloud 6 eingeführte Updatefunktion direkt per Browser bei mir nicht funktioniert.
  • Die Usability des ownCloud 6-Webclients überzeugt mich nicht ganz und die Synchronisation meiner Kontakte zwischen ownCloud und meinem OS X-Adressbuch hat leider nie ganz zufriedenstellend funktioniert, vor allem weil meine Gruppen von ownCloud weder beim direkten Import noch bei beim Kopieren via CardDAV übernommen wurden.
  • Naoki Hiroshima empfiehlt in seinem lesenswerten Artikel «How I Lost My $50,000 Twitter Username», für wichtige Logins und Kontaktadressen von wichtigen Internetdiensten keine Emailadressen unter einer persönlichen Domain zu verwenden, weil es schnell passieren kann, dass man die Kontrolle über seine eigenen Domains verliert.

Kurz: Ich hoste meine Kontakte und Kalender auf einer ownCloud-Installation, die mein Hosting-Provider nur auf Zusehen hin duldet, habe nicht mehr ganz so viel Vertrauen in die Backup-Strategie meines Hosts, bin nicht ganz zufrieden mit dem Webclient von ownCloud, auch weil ich die Updates selber via SSH einspielen muss und konnte relativ günstig ein Angebot testen[4], das mit den besten Empfehlungen kommt.

Die Schritte

  1. Ein Konto anlegen, entweder via das Angebot von c’t Wissen oder regulär unter https://cockpit.mykolab.com/signup/.
  2. Kontakte: OS X-Adressbuch im vCard-Format exportieren und in der MyKolab-Weboberfläche für die Kontaktverwaltung importieren. Das funktionierte fast einwandfrei, alle Gruppen wurden erstellt. Eine kleine Anzahl von Kontakten wurden ohne Fehlermeldung oder Angabe von Gründen nicht importiert. Diese habe ich von Hand direkt via CardDAV aus Address Book auf den MyKolab-Server kopiert und manuell den jeweiligen Gruppen hinzugefügt.
  3. Kalender in der ownCloud-Weboberfläche exportieren und in der MyKolab-Weboberfläche importieren. Hier muss man aufpassen, den gewünschten Zeitraum für den Export auszuwählen.
  4. Emails: Entweder eine professionelle Dienstleisterin beauftragen, vgl. https://mykolab.com/de/moving oder die beiden Konten in einem Email-Client einrichten und die Nachrichten kopieren (Erfolg nicht ganz einfach nachvollziehbar) oder (interessanter): Um meine knapp 45000 Emails vom Cyon- auf den MyKolab-IMAP-Server zu übertragen, habe ich die IMAP Tools von Rick Sanders verwendet[5], die mir auch schon in der Vergangenheit bei Umzügen gute Dienste geleistet haben. Die Tools kosten inzwischen knapp USD 50 mit lebenslangen Updates. Für die Migration zwischen zwei IMAP-Servern bieten sich eigentlich die Scripts imapcopy.pl (für einzelne Konten) und migrateIMAP.pl (für mehrere Konten) an. Diese unterstützen auch SSL (ohne verschlüsselte Verbindung erreicht man die MyKolab-Server nicht). Dieser Kopiervorgang brach bei mir aber ab. Grund: Kolab verwendet für IMAP den Cyrus IMAP-Server[6]. Dieser Server ist bezüglich den Email-Headern, die er akzeptiert sehr strikt/RFC-konform[7]. Hier mein Workaround:
    • Mit dem Script imap_to_maildir.pl habe ich meine Cyon-Mails in eine Maildir-Struktur heruntergeladen (und gleich noch ein Backup davon angefertigt).
    • Auf dieses Verzeichnis habe ich das Script von Rene Mayrhofer angewendet, das er unter https://www.mayrhofer.eu.org/importing-into-cyrus-spool veröffentlicht hat. Achtung: Damit dieses Script funktioniert, muss der Pfad des Maildir-Ordners für den ausführenden User ~/Maildir sein. Ausserdem muss das unter OS X standardmässig nicht installierte Tool md5sum installiert sein, verschiedene Möglichkeiten dafür finden sich unter http://raamdev.com/2008/howto-install-md5sum-sha1sum-on-mac-os-x/, ich habe das Paket coreutils mit Homebrew installiert (nicht vergessen, die PATH-Variable oder das Script anzupassen).
    • An dieser Stelle scheitert maildir_to_imap.pl nach längerer Zeit mit dem folgenden Fehler[8]:
      >> 1 APPEND "Archive" (\Seen) "15-Jan-2002 13:49:13 GMT" {42319}
      << 1 BAD Invalid date-time in Append command
      unexpected APPEND response: >1 BAD Invalid date-time in Append command<
      >> 1 APPEND "Archive" (\Seen) "15-Jan-2002 08:07:36 +0100" {1419}

      Der Versuch des Scripts, weitere Mails zu kopieren, scheiterte nach einer halben Stunde mit einem Timeout der IMAP-Verbindung zum Server.

Warum es beim Versuch blieb

  • Ich konnte die Mailmigration nicht erfolgreich abschliessen und die Mails, die kopiert wurden, waren beschädigt, d.h. der MyKolab-Webmailer Roundcube zählte den Mail-Body zu den Header-Daten.
  • Per ActiveSync wurden meine Kontakte-Gruppen nicht auf mein Nexus 7 (2013) synchronisiert. Per CardDAV mit CardDAV-Sync (Version 0.4.5) auch nicht.[9]
  • Die Geburtstage meiner Kontakte wurden in der Weboberfläche von MyKolab richtig angezeigt, aber mit CardDAV-Sync nicht richtig synchronisiert, die Kontakte-App von Android und mein iCal-Geburtstagskalender zeigten mir jeweils den Tag vor dem eigentlichen Geburtsdatum als Geburtsdatum an.
  • Termine aus ownCloud, zu denen ich andere eingeladen habe, wurden von MyKolab als Termine einer Drittperson interpretiert, die ich nicht ohne weiteres ändern konnte.
  • Ich will meine Daten selber zügeln können und misstraue Diensten wie Audriga grundsätzlich, weil ich nicht überprüfen kann, was genau mit meinen Daten passiert.

  1. Vgl. z. B. http://heise.de/-2098281.
  2. Das Problem war ein Alias, mit dem Cyon das Standardverhalten von ls verändert, vgl. https://github.com/owncloud/documentation/pull/251.
  3. Cyon erstellt zwar grundsätzlich Backups, macht aber in den AGB klar, dass «[d]er Kunde ist für die Sicherung seiner Daten selbst verantwortlich» ist.
  4. Ich glaube in den ersten zwei Wochen bekäme man ausserdem sein Geld zurück, wenn einem das Angebot nicht überzeugt.
  5. Vgl. für eine detaillierte Beschreibung die Dokumentation der Tools unter http://www.athensfbc.com/imap-tools/IMAP_Tools_User_Guide.pdf.
  6. Vgl. http://wiki.kolab.org/Server_component_Cyrus-Imapd.
  7. Vgl. http://cyrusimap.web.cmu.edu/mediawiki/index.php/Cyrus_Interoperability.
  8. Dieses Problem hatten andere schon 2008, vgl. http://lists.andrew.cmu.edu/pipermail/info-cyrus/2008-September/029805.html. Ich bin deshalb zuversichtlich, dass es eine Lösung dafür gibt. Ich habe sie aber noch nicht gefunden.
  9. Aus Neugier habe ich die Kontakte von MyKolab exportiert und unter ownCloud importiert, da funktionierte der Import der Gruppen. Diese wurden mit CardDAV-Sync dann auch korrekt auf mein Nexus 7 übertragen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.