Ich konnte heute einen ergattern und die 8GB RAM Version ist unterwegs. Achtung, aktuell ist die Softwareunterstützung fast nicht vorhanden!
Restic - Ein Backupkonzept - Wiederherstellung
-
Im letzten Artikel Restic - Ein Backupkonzept - Automatisieren! haben wir mittels Restic und Rclone eine Datensicherungsmöglichkeit erstellt, die uns vollautomatisch Backup's in eine Nextclod-Installation sichert.
So weit, so gut. Aber ein Backup nützt nichts, wenn man die Daten nicht testet und auch mal die Wiederherstellung ausprobiert. Restic legt ja nun bei jedem Vorgang einen Snapshot an. Hier eine kurze Erklärung wie man diese testet und wiederherstellt.
Snapshot auflisten
Mit folgendem Befehl listet man alle Snaphots auf.
restic -r rclone:nextcloud:TEST snapshots
Ausgabe:
restic -r rclone:nextcloud:TEST snapshots enter password for repository: password is correct ID Date Host Tags Directory ---------------------------------------------------------------------- 5c190a9a 2018-04-25 17:32:56 frank-MS-7A34 /media/ 80dbfa5e 2018-04-25 17:33:54 frank-MS-7A34 /media/ 7c894658 2018-04-25 17:36:06 frank-MS-7A34 /media/ 32f6138b 2018-04-25 17:39:09 frank-MS-7A34 /media/ 51746817 2018-04-25 17:39:34 frank-MS-7A34 /media/ 5fba5e1d 2018-04-25 17:39:51 frank-MS-7A34 /media/ 0f4b2d7e 2018-04-25 20:24:40 frank-MS-7A34 /media/ a3622a2b 2018-04-25 20:26:17 frank-MS-7A34 /media/ c15e6293 2018-04-25 20:29:03 frank-MS-7A34 /media/ 3c13b348 2018-04-26 20:00:04 frank-MS-7A34 /media/ ad607561 2018-04-27 20:00:05 frank-MS-7A34 /media/ ---------------------------------------------------------------------- 11 snapshots
Snapshot testen
restic -r rclone:nextcloud:TEST check --read-data using temporary cache in /tmp/restic-check-cache-935353687 enter password for repository: password is correct create exclusive lock for repository load indexes check all packs check snapshots, trees and blobs read all data [0:00] 100.00% 5 / 5 items duration: 0:00 no errors were found
Wir sehen, das die Daten in Ordnung sind.
Snapshot wiederherstellen
Die Snapshot-ID kopieren und dann folgenden Befehl eingeben
restic -r rclone:nextcloud:TEST restore ad607561 --target /home/frank/Test_Restic enter password for repository: password is correct restoring to /home/frank/Test_Restic
Danach befinden sich die Daten im Ordner /home/frank/Test_Restic
Script erweitern
Um das Ganze jetzt rund zu machen, brauchen wir ein Script, was die Daten sichert. Nach der Sicherung uns die Daten testet und bei einem Fehler eine Ausgabe in ein Logfile macht.
Ok, also manipulieren wir ein File um den Fehler abfangen zu können.
./check.sh using temporary cache in /tmp/restic-check-cache-068904630 password is correct create exclusive lock for repository load indexes check all packs check snapshots, trees and blobs error: load <snapshot/a82ece8693>: invalid data returned read all data [0:00] 100.00% 3 / 3 items duration: 0:00 Fatal: repository contains errors Abgebrochen
Den Snapshot a82.... habe ich manipuliert, eine Fehlermeldung "Abgebrochen" gebe ich auch schon aus. Das File sieht so aus.
#!/bin/bash # Script um mit Restic & Rclone Daten zu checken! # PW hinterlegen export RESTIC_PASSWORD=12345678 restic -r rclone:nextcloud:Daten check --read-data failcode=$? d='date +%d.%m.%Y_%H:%M:%S' if [ $failcode != 0 ] then echo $d "Ein Fehler ist aufgetreten!" >> /home/frank/restic.log fi
Bei einem Fehler wird geloggt. Ausgabe:
27.04.2018_22:13:51 Ein Fehler ist aufgetreten! 27.04.2018_22:14:35 Ein Fehler ist aufgetreten!
Das Ganze basteln wir jetzt mit dem Backup-Script zusammen.
#!/bin/bash # Script um mit Restic & Rclone Daten automatisiert zu sichern! # Repo definieren und PW hinterlegen export RESTIC_PASSWORD=12345678 #Was soll gesichert werden? backup_pfad=/media/ #Programm Start restic -r rclone:nextcloud:TEST backup $backup_pfad restic -r rclone:nextcloud:TEST check --read-data failcode=$? d='date +%d.%m.%Y_%H:%M:%S' if [ $failcode != 0 ] then echo $d "Ein Fehler ist aufgetreten!" >> /home/frank/restic.log fi
Done!
-
-
-
WLan auf der Konsole einrichten
Angeheftet Linux -
-
-
-
-