Einzelne Dateien mit BorgBackup wiederherstellen – sicher aus einer Storage Box

Überarbeitet am 9. September 2026.

Dieser Artikel entstand, nachdem ich versehentlich eine Konfigurationsdatei meines Matrix-Servers gelöscht hatte. Genau für solche Fälle mag ich BorgBackup: Ich muss nicht erst eine komplette Sicherung herunterladen und entpacken, sondern kann gezielt eine einzelne Datei aus einem Archiv holen.

Meine grundlegende Anleitung zum Backup selbst habe ich ebenfalls aktualisiert: BorgBackup unter Debian und Ubuntu einrichten.

Beispiel: Borg-Repository auf einer Hetzner Storage Box

Für die Beispiele verwende ich einen Platzhalter. Benutzername und Repository musst du natürlich an dein Setup anpassen:

REPO='ssh://uX****@********************ox.de:23/./backups/server'

Hetzner stellt Borg über den erweiterten SSH-Dienst auf Port 23 bereit. Weil lokal und remote dieselbe Borg-Version zusammenpassen sollten, empfiehlt Hetzner außerdem, die gewünschte Version explizit mit --remote-path anzugeben. Für Borg 1.4:

--remote-path=borg-1.4

1. Vorhandene Archive anzeigen

borg list --remote-path=borg-1.4 "$REPO"

Die Ausgabe enthält die vorhandenen Sicherungsarchive. Daraus wähle ich den Stand aus, aus dem ich die Datei zurückholen möchte.

Beispiel:

ARCHIVE='2026-09-08_00-00'

2. Datei im Archiv suchen

Wenn der genaue Pfad bekannt ist, kann man ihn direkt prüfen:

borg list --remote-path=borg-1.4 "$REPO::$ARCHIVE" etc/nginx/nginx.conf

Ist nur der Dateiname bekannt, kann man die Archivliste lokal filtern:

borg list --remote-path=borg-1.4 "$REPO::$ARCHIVE" | grep 'nginx.conf'

3. Nicht direkt in das Live-Verzeichnis wiederherstellen

Früher bin ich direkt in das Zielverzeichnis gewechselt. Das funktioniert, ist aber unnötig riskant: Eine falsche Datei oder ein falscher Archivstand kann so sofort eine produktive Konfiguration überschreiben.

Heute würde ich zuerst ein separates Restore-Verzeichnis anlegen:

mkdir -p /tmp/borg-restore
cd /tmp/borg-restore

4. Erst einen Dry-Run machen

Borg 1.4 unterstützt bei extract einen Dry-Run. Dabei werden Daten gelesen, geprüft, entschlüsselt und dekomprimiert, aber noch nicht auf die Platte geschrieben.

borg extract --dry-run --remote-path=borg-1.4 "$REPO::$ARCHIVE" etc/nginx/nginx.conf

Wenn das ohne Fehler durchläuft, folgt die eigentliche Wiederherstellung:

borg extract --remote-path=borg-1.4 "$REPO::$ARCHIVE" etc/nginx/nginx.conf

5. Wiederhergestellte Datei kontrollieren

Borg schreibt beim Extrahieren relativ zum aktuellen Arbeitsverzeichnis. In unserem Beispiel liegt die Datei anschließend hier:

/tmp/borg-restore/etc/nginx/nginx.conf

Jetzt kann ich die Datei in Ruhe vergleichen:

diff -u /etc/nginx/nginx.conf /tmp/borg-restore/etc/nginx/nginx.conf

Erst wenn ich sicher bin, dass es die richtige Version ist, kopiere ich sie zurück. Bei einer Nginx-Konfiguration würde ich anschließend vor einem Reload außerdem immer testen:

sudo nginx -t

Komplette Verzeichnisse funktionieren genauso

Statt einer einzelnen Datei lässt sich auch ein Verzeichnis angeben:

borg extract --dry-run --remote-path=borg-1.4 "$REPO::$ARCHIVE" etc/nginx

Danach ohne --dry-run wiederholen, wenn die Auswahl stimmt.

Restore-Tests gehören zum Backup

Ein Backup ist erst dann wirklich beruhigend, wenn man weiß, dass sich Daten wieder herausbekommen lassen. Deshalb finde ich gerade das Wiederherstellen einer einzelnen ungefährlichen Datei einen guten regelmäßigen Test. Man lernt nebenbei den Ablauf und merkt nicht erst im Ernstfall, dass Zugangsdaten, Borg-Version oder Passphrase fehlen.

Fazit

Die Grundidee meines alten Artikels war richtig, aber heute würde ich deutlich vorsichtiger restaurieren: Archiv auswählen, Datei suchen, Dry-Run, in ein temporäres Verzeichnis extrahieren, vergleichen und erst danach zurückkopieren. Das kostet nur wenige Minuten und verhindert, dass aus einem kleinen Fehler beim Restore der nächste größere wird.

Quellen: BorgBackup 1.4: extract und Hetzner Storage Box: SSH und BorgBackup.

Wie ist deine Meinung?
Schreib gern einen Kommentar unter dem Artikel oder diskutiere mit anderen im Matrix-Kanal: #dasnetzundich:matrix.org

1 Kommentar zu „Einzelne Dateien mit BorgBackup wiederherstellen – sicher aus einer Storage Box“

Schreibe einen Kommentar