Restic ist eine Terminal-basierte Datensicherungssoftware, die Backups automatisch mit AES-256 verschlüsselt und inkrementell und deduplizierend speichert.
Alle Daten werden in einem sogenannten Restic-Repository gesichert und können später anhand einer ID angefordert werden. Diese „Speicher-ID“ ist der SHA-256-Hash des Inhalts einer Datei.
Sicherungen in die Cloud sowie das Wiederherstellen daraus sind ebenfalls möglich. Alle Dateien in einem Repository werden nur einmal geschrieben und danach nicht mehr geändert. Auf diese Weise können mehrere Clients gleichzeitig auf das Repository zugreifen und sogar darauf schreiben. Lediglich ein Bereinigungsvorgang entfernt Daten aus dem Repository.
Installation
Restic kann direkt aus den Quellen von Debian und Ubuntu installiert werden:
sudo apt install restic
Zum Mounten von Sicherungen/Snapshots wird FUSE verwendet. Die Nutzung weiterer Clouddienste wie z.B. Owncloud, Webdav erfordert das rclone-Paket. Beide Pakete installieren Sie im Terminal mit:
sudo apt install fuse rclone
Zunächst aktualisieren wir Restic im Terminal:
sudo restic self-update
Warten Sie den Vorgang ab.
Verkürzte Übersicht wichtiger Befehle
Unterkommando | Auswirkung |
init | Erstellen eines neuen Backup-Speicherplatzes |
backup | Erstellt ein neues Backup |
diff | Zeigt die Unterschiede zwischen zwei verschiedenen Backups |
snapshots | Zeigt alle Snapshots an |
check | Überprüft den Index eines Backups |
restore | Für das Einspielen eines Backups |
forget | Löscht einen Snapshot aus dem Index |
list | Listet alle Objekte im Repo auf |
ls | Listet alle Dateien auf |
Bedienung
Die Bedienung von Restic erfolgt ausnahmslos über die Konsole, mit folgendem Schema:
restic UNTERKOMMANDO PARAMETER -r PFAD-ZUM-REPO
Bei der Neuerstellung eines Backups wird PFAD-ZUM-REPO zum Pfad zu einem leeren Ordner.
Repository erstellen
Backupordner lokal:
restic init -r /PFAD/ZUM/BACKUPORDNER
Beispiel:
restic init -r /media/user/SAFE/restic_sicherungen
Backupordner SFTP:
restic -r sftp:user@host:/PFAD/ZUM/BACKUPORDNER init
Backupordner rclone:
restic -r rclone:REMOTE-NAME:/PFAD/AUF/REMOTE/BACKUPORDNER init
Backup erstellen
Ein Backup lässt sich ganz einfach mit folgenden Befehlen erstellen:
restic -r /PFAD/ZUM/BACKUPORDNER backup /home /root
Um im Beispiel zu bleiben:
restic -r /media/user/SAFE/restic_sicherungen backup /home /root
Nach Eingabe des Passwortes für das vormals erstellte Repository startet der Backup-Prozess.
Warten Sie den Vorgang ab.
Snapshots / Sicherungen anzeigen
Die vorhandenen Backups bzw. Snapshots werden hiermit aufgelistet:
restic -r /PFAD/ZUM/BACKUPORDNER snapshots
Im Beispiel:
restic -r /media/user/SAFE/restic_sicherungen snapshots
Hier werden die vorhandenen Backups / Snapshosts aufgelistet, die angegebene IDs können dann z. B. zur Wiederherstellung oder zur Überprüfung verwendet werden.
Unser Ausgabebeispiel:
Backup einspielen
Mit dem folgenden Befehl wird ein Snapshot mit der ID b3e1e859 nach /old/ zurückgespielt:
restic -r /PFAD/ZUM/BACKUPORDNER restore ID --target /old
Im Beispiel:
restic -r /media/user/SAFE/restic_sicherungen restore 8f27e3ab --target /old
Mit dem folgenden Befehl wird ein Backup gemountet wie ein USB-Stick – jedoch ohne Schreibrechte. Daten können nur gelesen oder kopiert, aber nicht verändert werden.
Es ist so möglich, sich durch alle vorhandenen Snapshots zu bewegen.
mkdir /mnt/backup
restic -r /PFAD/ZUM/BACKUPORDNER mount /mnt/backup
Im Beispiel also:
mkdir /mnt/backup
restic -r /media/user/SAFE/restic_sicherungen mount /mnt/backup
Beispiel: Solus
Neben Debian, Ubuntu und Linux Mint habe ich Restic u. a. auch in Solus getestet.
Hier sind folgende Tools erforderlich:
sudo eopkg install restic fuse rclone
Ein Update von Restic ist hier nicht nötig – Solus hat die aktuellste Version parat.
Fahren Sie mit den weiteren Schritten wie oben beschrieben fort. Im Beispiel hat sich lediglich der Pfad zum Speicherort geändert…
Fazit
Restic ist ein modernes Backup-Programm, das effiziente, sichere und benutzerfreundliche Backup-Lösungen für verschiedene Betriebssysteme, u. a. Linux und BSD, bietet. Es unterstützt verschiedene Speichertypen, ermöglicht einfache und effektive Backups und ist vollständig Open Source.
Es bietet Funktionen wie Deduplizierung, Verschlüsselung und die Möglichkeit, die Integrität der gespeicherten Daten zu überprüfen.
Einmal mit der Befehlssyntax vertraut, schätzt man die Effizienz, Einfachheit und Zuverlässigkeit.
Eine umfangreiche Dokumentation (englisch) finden Sie hier.
Noch keine Reaktion