Skip to main content

Rollback

1 | Snapshots anzeigen

Ein Snapshot ist eine schreibgeschützte Momentaufnahme Ihres Dateisystems.
Liste aller vorhandenen Snapshots anzeigen:

zfs list -t snapshot

Beispielausgabe (mit ausgedachten Namen & Größen):

NAME                                 USED  AVAIL  REFER  MOUNTPOINT
poolalpha/data@2025-07-14_06-04-31   248M      -   1.3T  -
poolalpha/data@2025-07-16_00-39-41   253M      -   1.4T  -
tank/media@2025-07-02_23-13-47        25G      -    13T  -
tank/media@2025-07-16_00-39-40        1T      -    19T  -

2 | Rollback (zu einem Snapshot zurückkehren)

  1. Kopieren Sie den vollständigen Snapshot-Namen aus der Liste (pool/dataset@datum_uhrzeit).
  2. Führen Sie den Rollback-Befehl aus:
    zfs rollback poolalpha/data@2025-07-14_06-04-31
  3. Tipp für Fortgeschrittene:
    Mit -r (recursive) werden automatisch alle neueren Snapshots entfernt, bevor der Rollback ausgeführt wird.
    zfs rollback -r poolalpha/data@2025-07-14_06-04-31

3 | Snapshot manuell erstellen (heutiges Datum)

Einfach im Terminal einen Einzeiler eingeben:

# Zeitstempel-Variable im Format YYYY-MM-DD_HH-MM-SS
TS=$(date +"%Y-%m-%d_%H-%M-%S")

# Snapshot für ein einzelnes Dataset
zfs snapshot poolalpha/data@$TS

# Rekursiv für einen gesamten Dataset-Baum
zfs snapshot -r tank@$TS
  • 💾 Snapshots belegen nur den Platz für geänderte Datenblöcke.

4 | Häufige Fragen & praktische Tipps

Was passiert beim Rollback mit meinen neueren Daten ?

Alle Blöcke, die nach dem gewählten Snapshot erzeugt wurden, gehen verloren. Sichern Sie daher wichtige Dateien zuerst oder testen den Snapshot mit einem Clone:

zfs clone poolalpha/data@2025-07-14_06-04-31 poolalpha/data-test
Kann ich einen Snapshot gegen Löschen schützen ?

Ja – mit einem sogenannten Hold:

zfs hold keep poolalpha/data@2025-07-14_06-04-31
# Aufheben:
zfs release keep poolalpha/data@2025-07-14_06-04-31
Wie schiebe ich einen Snapshot auf einen Backup-Server ?
zfs send -vP poolalpha/data@$TS | \
ssh backuphost zfs recv -uF backuppool/data