Borg Backup#
auf der Suche nach einem modernen Backup-Werkzeug ist mir BorgBackup über den Weg gelaufen. Die meisten Werkzeuge, die sich "Backup" nennen, stammen irgendwie aus der Zeit der Magnetbänder.
Davon hebt sich Borg ab, und es hat den Weg in die Debian Distribution
gefunden.
Features#
Daten werden dedupliziert, verschlüsselt und optional komprimiert in einem Repository abgelegt. Das Repository kann auf einem entfernten Borg-Server liegen. Die Datenübertragung und der Start des Remote-Borg-Dienstes erfolgen in diesem Fall über ssh.
Die Deduplizierung findet auf dem Client (dem zu sichernden Rechner) statt. Das gleiche gilt für die Verschlüsselung. Dazu sollte der Rechner bei größeren Datenmengen über ausreichend Hauptspeicher verfügen (in der Größenordnung mehrere GByte RAM für ein Terabyte Disk).
Installation#
Das Paket findet sich in den Backports zum Jessie-Release. Die Pakete python3-msgpack und borgbackup müssen aus den Backports installiert werden und zwar auf Client und Server, etwa so:
apt-get install python3-msgpack=0.4.6-1~bpo8+1
apt-get install borgbackup
Konfiguration und Backup#
Per Voreinstellung wird der Schlüssel für die Verschlüsselung der Datensicherungen mit im Repository auf dem Server hinterlegt. Das klingt nicht nach einer guten Idee; er wird aber durch eine (hoffentlich gute) Passphrase geschützt.
Die Konfiguration auf dem Client kann durch Umgebungsvariablen erfolgen. Meine ersten Ad-Hoc-Aufrufe:
export BORG_REPO='ssh://remoteuser@backupserver.example.com:22/home/borguser/repo'
export BORG_PASSPHRASE='eine gute Passphrase sieht anders aus'
Das Anlegen des Remote-Repositories erfolgt mit:
borg init
Ein Backup meines lokalen /home/localuser/Bilder-Verzeichnisses mache ich mit:
cd $HOME
borg create ::2017-03-15 Bilder
Dabei wird die Zeichenfolge "2017-03-15" ein Name für meinen Backup
Recherche und Restore#
Liste Backups und Inhalt eines Backup:
borg list
borg list ::2017-03-15
Wiederherstellung eines kompletten Backup:
mkdir /tmp/restore
cd /tmp/restore
borg extract ::2017-03-15
Aufräumen#
Lasse jeweils den letzten Backup der letzten 14 Tage stehen:
borg prune -d 14
Links#