Ich hab hier eine umfassende Installation mit BTRFS und hab mir dazu ein snapshot- und Backup-Skript in Python geschrieben.
Zusätzlich hab ich einige dazugehörige systemd-Unis gebaut, welche die Snapshots und auch das Backup auf eine externe Platte komfortabel automatisieren.
Das Setup hab ich von SuSEs Snapper übernommen (hab lange nach einer sinnvollen Geschichte gesucht, wie ich Rollups eines älteren Snapshots so gestalten kann, dass mein Home, aber auch die Mails von dovecot trotzdem aktuell sind...).
Ich hab mir auch ein kleines Skript geschrieben, welches mir die Installation in deinem chroot mit debootstrap vorbereitet, damit die entsprechenden btrfs-Subvolumes schon vor der Installation erstellt und gemountet werden, damit ich anschließend ein passendes Setup (Partitionierung kann man ja mit btrfs nicht mehr wirklich sagen... )
Außerdem gibt es eine (zwei) systemd-Units, die es mir erlauben, mit
Code: Alles auswählen
systemctl start mkbackup-activate@dev-sdb2.service
Code: Alles auswählen
systemctl start mkbackup-deactivate@dev-sdb2.service
Wenn die Units/Rules mit der systemd-unit erzeugt und aktiviert wurden, wird automatisch ein Snapshot vom gesamten System gemacht und auf die Platte übertragen.
Über ein Config-File in /etc/ das bei nichtbestehen mit Default-Werten automatisch erzeugt wird, kann das Backup gesteuert werden.
Außerdem hab ich noch ein FUSE-Filesystem geschrieben, welches mir den Zugriff auf die Homes der Snapshots (sowohl auf der internen Platte, als auch der externen) in einem Verzeichnis ~/backup mit vereinfachten Dateinamen (heute timestamp, gestern timestamp, vorgestern timestamp, datum timestamp) und der Ergänzung ob local oder extern in einem einzigen Verzeichnis erlaubt.
Ihr könnt all das hier finden:
https://github.com/xundeenergie/mksnapshot
Ich bin noch nicht fertig, da das ganze ein Work in Progress ist... So quasi mein Hobby.
Ich hab das FUSE-Filesystem noch nicht mit der externen Platte testen können - müsste aber funktionieren.
Geplant ist noch eine Extension für den Gnome-Desktop in man erstens sieht, ob gerade ein Snapshot/Backup erstellt/geschrieben wird, wo man bei einer neu eingesteckten externen Platte auswählen kann, ob diese für Backups herangezogen werden soll (und welche Partition davon), und welche Backups/Snapshots (stündlich, täglich, wöchentlich...) gemacht werden sollen, und welche davon auf die externe Platte geschrieben werden sollen, und wieviel jeweils aufgehoben werden sollen. (Also das, was über das Config-File eingestellt wird)
Aber dazu muss ich mich noch in die Programmierung von Gnome-Extensions einarbeiten. Das wird noch ein wenig dauern.
Besteht Interesse an einem Wikiartikel darüber?
Ich muss für Github noch eine genauere Anleitung zur Installation und Funktion schreiben. Das hat mich noch nicht gefreut...
Würd mich freuen, wenn jemand Interesse an diesem Projekt zeigt.
lg scientific