Eine Imap-Mbox mit Git sichern, ist das eine gute Idee?

1302
cnst

Ich versuche, einen neuen Mail-Server für meinen persönlichen Gebrauch einzurichten, und ich möchte es besser machen als alle vorherigen Zeiten.

Eine Sache, die mich immer beschäftigt hat, ist die Sicherung meines Posteingangs und anderer Ordner. In der Vergangenheit habe ich POP3 mit Mozilla App Suite / SeaMonkey als Client verwendet, und ich fand es immer problematisch, Sicherungen durchzuführen, da Teilsicherungen sehr problematisch waren (das Speichern der Nachrichten aufgrund eines Jahres und das Umbenennen und Verschieben von Daten waren sehr problematisch.) (und dann nie wieder verschieben), was unter Windows ohnehin schwierig ist, und beschränkt sich auf jährliche Backups, die ärgerlich werden. Außerdem war das Setup an einen einzelnen PC gebunden, eine weitere Sache, die ich vermeiden möchte.

Ich denke jetzt daran, mit Dovecot IMAP4 zu gehen und Mbox und andere Ordner auf dem Server mit Git auf wöchentlicher, täglicher, stündlicher oder pro Nachrichtenbasis zu sichern.

Wenn mit git und mehreren mbox-Dateien (Mail-Ordnern) eine E-Mail von einer Mbox zu einer anderen verschoben wird (z. B. im Posteingang, dann in einen Ordner verschoben wird), wird git alle Fälle dieser E-Mails in verschiedenen Ordnern feststellen?

Ist das Sichern von Imap-Mbox-Dateien mit Git-Sound möglich? Praktisch Ist das überhaupt eine gute Idee? Funktioniert es und ist es relativ einfach einzurichten?

Oder sollte ich mbox fallen lassen und mit maildir gehen? Wäre git mit maildir überhaupt besser?

3

2 Antworten auf die Frage

1
seb

Ich lege meine Remote-IMAP-Mails in einem lokalen Maildir-Verzeichnis ab, das von git versioniert wird. Es ist ein bisschen geeky und hackig, aber ich denke, es ist ein guter Weg, wenn Sie keine E-Mails verlieren möchten und sicher sein möchten, selbst wenn Sie versehentlich eine Reihe von E-Mails auf Ihrem Remote-IMAP löschen. Das Skript, das den Job ausführt, funktioniert folgendermaßen:

  • Alle Remote-Mails auf dem IMAP-Server werden mit einem lokalen Maildir-Verzeichnis synchronisiert. Ich benutze imapsyncdafür.
  • Die Mail-Dateien in diesem lokalen Maildir werden dann in ein versionsgesteuertes git-Maildir-Verzeichnis kopiert. Die ursprüngliche Verzeichnisstruktur wird nicht beibehalten, da dies für mich nicht wichtig ist. Stattdessen enthält git-Maildir für jedes Jahr einen Ordner, und die Mail-Dateien werden basierend auf dem Date-Header der Mail-Datei in den Jahresordner kopiert. Ich benutze mu(Mailbox-Utils) für die Sortierarbeit.
  • Im nächsten Schritt fügt das Skript die neuen Dateien automatisch hinzu und übergibt sie dem git-Repository.

Damit habe ich eine lokale Sicherung aller meiner E-Mails. Selbst wenn ich Mails auf der entfernten Seite lösche, habe ich immer noch lokale Kopien. Der Vorteil des lokalen Git-Repositorys ist die Datensicherheit. Selbst wenn ich mich mit meinen Dateien in meinem lokalen Backup befasse, habe ich eine vollständige Historie im Commit-Verlauf und ich kann gelöschte Mails wiederherstellen.

Der Vorteil von Maildir gegenüber Mbox ist, dass Sie mit Maildir eine Datei für jede Mail haben und nicht eine große Mbox-Datei, die sich jedes Mal ändert, wenn Sie neue Mails hinzufügen. Eine Datei pro Mail macht eine schöne Git-Geschichte.

Das ist interessant. Da diese Antwort jetzt "alt" ist, wie ist die Erfahrung bisher? Das Skript von Ihnen ist nur ein einfaches Bash-Skript? Nikos Alexandris vor 9 Jahren 0
0
Martino Dino

Mir ist nicht bekannt, dass jemand Git für Backups von Mailboxen / Maildirs verwendet ...

Ich verwende local rsyncin einen anderen Ordner, um Backups zu machen. Ich glaube, die Git-Versionierung würde nur den Zielordner durcheinander bringen.

Speichern Sie Ihre E-Mails mit Dovecot und IMAPv4 zusammen mit Maildir im Home-Verzeichnis. In den meisten Szenarien ist dies schneller und Sie werden sich vor möglichen Sperrproblemen schützen.

Wenn Sie sagen, dass Sie sich mit Maildir im Home-Verzeichnis befinden, implizieren Sie, dass es sich bei / var / mail um eine Mbox handeln kann? Einer der Gründe, warum ich git anstelle von rsync verwenden möchte, ist das Vermeiden von Manipulationen und das Sicherstellen, dass alle Sicherungen ohne zusätzlichen Speicherplatz aufbewahrt werden soll). cnst vor 11 Jahren 0
Der Ort macht keinen Unterschied, ob in `/ var / mail` oder` / home / user / maildir` das Format immer noch MBOX oder Maildir sein kann. Für git ist es nicht sinnvoll, es nur für Teilaktualisierungen zu verwenden. Sie erhalten nur die Versionierung mit inkrementellen Deltas, aber ich glaube immer noch, dass dies ein großer Aufwand ist, besonders wenn Sie große Mail-Archive haben. `rsync` ist gut, dass es teilweise Aktualisierungen der Dateien durchführt, frühere Versionen derselben Datei jedoch nicht nachverfolgt werden (Hauptunterschied zu git). Martino Dino vor 11 Jahren 0
Nun, ich werde keine Briefe über imap an mich selbst schicken, und ich habe darüber nachgedacht, sendmail für eingehende E-Mails zu verwenden, daher die Frage, ob Mbox und Maildir gemischt werden können. Ich bin mir auch nicht sicher, ob Ihnen klar ist, wie effizient "git commit" ist. Deshalb sollten Sie git nicht von Ihrem Job abbringen, nur weil Sie jederzeit zurückkehren können. cnst vor 11 Jahren 0