IMAP Backup mit OfflineIMAP

Ich habe mutt bei mir so konfiguriert, dass ich keine Sonderkomponenten, wie z.b. fetchmail und Konsorten brauche. Somit kann ich meine EMails nur lesen, wenn ich Online bin, was für meine Zwecke auch ausreicht. Da ich aber ganz gerne ein Backup meiner Mails habe benutze ich OfflineIMAP um meine Mails lokal zu speichern, sie dann an tar zu übergeben um das Ganze anschliessend noch mit gpg zu verschlüsseln.

Installation

Offlineimap kann unter Debian mit einem aptitude install offlineimap aus den Repositories installiert werden. Unter FreeBSd geht dies einfach aus den Ports heraus

Konfiguration

Als nächstes lege ich mir Ordner an, in welchen die Mails gespeichert werden sollen. Bei mir sind es für zwei Accounts die Verzeichnisse
/home/seraphyn/Dokumente/ALLINKL_BCKP/Mail/chris und
/home/seraphyn/Dokumente/ALLINKL_BCKP/Mail/sera.
Die Maillinglisten wären mir zuviel für ein Backup und jene sind ja auch im Web vorhanden.

In die Datei ~/.offlineimaprc schreibe ich die Zugangsdaten um den Zugriff per IMAP zu ermöglichen:

[general]
accounts = TeikoChris, TeikoSera
maxsyncaccounts = 2

[Account TeikoChris]
localrepository = LocalTeikoChris
remoterepository = RemoteTeikoChris

[Repository LocalTeikoChris]
type = Maildir
localfolders = /home/seraphyn/Dokumente/ALLINKL_BCKP/Mail/chris

[Repository RemoteTeikoChris]
type = IMAP
remotehost = $DEINMAILSERVER
remoteuser = $DEINBENUTZERNAME
remotepass = $DEINPASSWORT
ssl = yes
maxconnections = 1

realdelete = no

[Account TeikoSera]
localrepository = LocalTeikoSera
remoterepository = RemoteTeikoSera

[Repository LocalTeikoSera]
type = Maildir
localfolders = /home/seraphyn/Dokumente/ALLINKL_BCKP/Mail/sera

[Repository RemoteTeikoSera]
type = IMAP
remotehost = $DEINMAILSERVER
remoteuser = $DEINBENUTZERNAME
remotepass = $DEINPASSWORT
ssl = yes
maxconnections = 1

realdelete = no

Erklärung:
Zeile 2 gibt die beiden Accounts an, welche ein Backup erfahren werden.
Zeile 3 Anzahl der gleichzeitig abzufragenden Accounts
Zeile 5 definiert für den Account den Mailserver und den lokalen Speicherort.
Zeile 9 definiert den lokalen Speicherort und die Art des Speicherns, IMAP oder Mailbox
Zeile 13 definiert die Mailserverdaten
Zeile 18 wir wollen SSL/TLS benutzen
Zeile 21 geben wir an, dass wir nichts löschen wollen, siehe dazu auch das Wiki von OfflineIMAP
Zeile 23-39 das selbe in Grün für den anderen Account.

Das ganze wird dann mit dem Aufruf von offlineimap ausgeführt.
Natürlich kann man sich dafür einen täglichen Cronjob erstellen.

Am besten verschlüsselt man sich die Datei ~/.offlineimaprc mit GPG, damit nicht die Passwörter gelesen werden können.

9 Gedanken zu „IMAP Backup mit OfflineIMAP“

  1. Hervorragender Tip! Backup hat soweit funktioniert, ich frage mich jetzt nur wie im Fall des Falles die gesicherten Daten Richtung IMAP-Account wiederhergestellt werden können?!

  2. Verstehe nicht, wie Du damit meinst:
    „du fügst zu dem [Repository Local]einfach nur die [Repository Remote] mit ein.“? Ich möchte lokal gesicherte Datei auf einen leeren IMAP-Konto übertragen.
    Ich dachte ich könnte einfach localrepository mit remoterepository tauschen, aber leider spuckt das Programm Fehlermeldung aus. :/

    cu Floh

  3. Danke für die Idee! Aber unklar ist mir folgendes: Ich möchte Account A auf Account B spiegeln (also one-way backup).
    In der Doku steht immer „sync“, ich will aber nicht, das Änderungen von Account B nach A zurückfließen. Wie mache ich das?

  4. Ich sage es im Vorraus, ich habe es noch nicht mit dieser Option gemacht, aber ich gehe davon aus, dass die Option -o damit gemeint ist:
    -o Run only once, ignoring all autorefresh settings in the configuration file.
    http://software.complete.org/static/offlineimap/doc//manual.html
    Ich würde es mal an Deiner Stelle testen, da ich es bis Dato nur als BackupMedium genutzt habe. Sprich zwei Testaccounts erstellen (natürlich mit Mails;)) und testen.
    Würde mich sehr über eine Antwort darüber freuen, vielleicht haben auch andere diese Herausfoderung.
    Gruss
    Chris

Kommentare sind geschlossen.