Teile einer Sicherungskopie mit Borgbackup direkt wiederherstellen
Ich hatte in der Vergangenheit einen Artikel darüber geschrieben, wie man ein inkrementelles Backup erstellen mithilfe von „Borgbackup“. Diese Anleitung, wie man eine Sicherungskopie mit Borgbackup erstellt, könnt ihr hier nachlesen. Verlangende Woche bekam ich ein Problem, ich hatte aus Versehen eine Konfigurationsdatei meines Matrix-Servers gelöscht. Nun musste natürlich die Sicherungskopie der letzten Nacht wieder her. Herunterladen und entpacken und mühselig nach der Datei suchen, würde gehen. Das ist aber nicht Sinn der Sache. Hier jetzt die Anleitung, wie das Extrahieren einzelner Dateien klappt. Als Beispiel nenne ich das Wiederherstellen der Konfigurationsdatei vom Matrix Server.
Vorbereiten und Sicherungskopie auflisten
Zuerst müsst ihr euch den Key besorgen von eurer Sicherung. Meine liegt in /usr/local/bin/backup.sh.
Dann geht es an das Verbinden mit dem Backupserver und das abschließende auflisten der Backupdateien. Das geht mit einem Kommando.
sudo borg list ssh://u12345@u12345.your-storagebox.de:23/./backups/Server
Enter passphrase for key
ssh://u12345@u12345.your-storagebox.de:23/./backups/Server:
Die Ausgabe sollte ähnlich wie diese aussehen:
[81db4a807b7550fc2df4e23f558a856263c5c7109f08b6b0bd62c79d350f4a7c]
2021-12-11_00:00 Sat, 2021-12-11 00:00:51 [b0595b3ab110cd58e97b87147a215be7a62340a450492ccddb61218ad9bb2e0d]
2021-12-12_00:00 Sun, 2021-12-12 00:00:25 [af6c77957c78aa5d8a721d28b22c18523d6eb70251e92613b1d6a9f66816684c]
2022-02-20_00:00.checkpoint Sun, 2022-02-20 00:00:27 [31cf906ddf4db441189b9dc86a4ae1b447be08d14910cc6877004f29636f7bd4]
2022-02-21_00:00.checkpoint Mon, 2022-02-21 00:00:23 [49a1dd8ff0c60fdf3a57f583c111ccb9e498a495a8a03f8ed411638d13c4d3a1]
2022-02-22_00:00 Tue, 2022-02-22 00:00:50 [2dd22fefaca2e9ac22990e49b3d6c1b2878ed74c900dd2431228c2b6ca5352c2]
2022-02-23_00:00 Wed, 2022-02-23 00:00:48 [14b6abdcb696a00025793888dbcc66efd3e794845190c761ff2473e13e883edf]
Ich entscheide mich für das zuletzt erstellte Backup 2022-02-23_00:00. Nun muss die benötigte Datei aus dieser Sicherungskopie extrahiert werden. Damit die Datei nicht irgendwohin extrahiert wird, bin ich zuerst in das Verzeichnis gewechselt, wo ich die wiederhergestellte Datei benötige.
cd /opt/matrix-docker-ansible-deploy/inventory/host_vars/
Dann nach der Datei im Backup gesucht und schließlich auch gefunden. Die Ausgabe sieht so aus.
sudo borg list ssh://u12345@u12345.your-storagebox.de:23/./backups/Server::2022-02-22_00:00 | grep "vars.yml"
Enter passphrase for key
ssh://u12345@u12345.your-storagebox.de:23/./backups/Server:
-rw-r--r-- root root 1605 Sat, 2022-02-12 18:27:25 opt/matrix-docker-ansible-deploy/examples/vars.yml
-rw-r--r-- root root 13998 Mon, 2022-02-21 11:39:25 opt/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml
-rw-r--r-- root root 5124 Thu, 2021-10-07 23:29:29 opt/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml.backup
-rw-r--r-- root root 1655 Thu, 2021-10-07 23:29:29 opt/matrix-docker-ansible-deploy/matrix-docker-ansible-deploy/examples/vars.yml
-rw-r--r-- root root 8949 Fri, 2021-11-12 16:33:40 opt/matrix-docker-ansible-deploy/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml
-rw-r--r-- root root 5124 Thu, 2021-10-07 23:29:29 opt/matrix-docker-ansible-deploy/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml.backup
-rw-rw---- matrix matrix 13998 Mon, 2022-02-21 11:40:27 matrix/vars.yml
-rw-r----- matrix matrix 7734 Sat, 2021-10-09 08:40:54 matrix/matrix/vars.yml
Hier hatte ich mich für die Datei opt/matrix-docker-ansible-deploy/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml entschieden, dies konnte dann mit dem abschließendem Befehl extrahiert werden.
sudo borg extract ssh://u12345@u12345.your-storagebox.de:23/./backups/Server::2022-02-22_00:00 opt/matrix-docker-ansible-deploy/inventory/host_vars/matrix.fulda.social/vars.yml .
Danach ist das wiederherstellen abgeschlossen.