Files
proxmox-snapshot-service/handbuch/docs/wiederherstellen/verwerfen.md
T
duffyduckandClaude Opus 5 59e7224297 Handbuch auf MkDocs-Basis, mit Bildschirmfotos aus dem Programm
26 Kapitel in vier Teilen, in der Reihenfolge, in der man sie braucht:
erst sichern, dann Dateien holen, dann ganze Maschinen wiederherstellen,
dahinter der Nachschlagteil.

Gebaut wird mit MkDocs + Material. Bewusst ohne Netzabhaengigkeiten:
keine Schriften vom CDN (font: false), Volltextsuche mit deutschem
Stemming liegt neben den Seiten. Im Notfall steht vielleicht das halbe
Netz - dann nuetzt eine Doku im Internet nichts.

  handbuch/bauen.sh              baut handbuch/site/
  handbuch/bauen.sh ansehen      Vorschau auf 127.0.0.1:8000

install.sh nimmt das gebaute Handbuch mit nach
/usr/share/doc/pvesnap/handbuch/ - falls es vorliegt. Auf dem Host selbst
wird nichts gebaut, mkdocs gehoert nicht auf einen Hypervisor.

Die 28 Bildschirmfotos sind nicht abfotografiert, sondern erzeugt: Der
echte Programmcode laeuft in einem Pseudo-Terminal gegen einen erfundenen
Proxmox-Host (Attrappen fuer pvesh, perl und rbd), pyte baut den Bildschirm
nach, heraus faellt ein SVG. Damit stimmen sie garantiert mit dem Programm
ueberein, sind reproduzierbar und enthalten keine echten Daten. Die
Werkstatt dafuer liegt unter handbuch/werkstatt/ samt LIESMICH.md.

Nebenbei: die Schlussmeldung von install.sh warb noch mit --exchange,
das mit dem eingebauten Austauschlaufwerk weggefallen ist.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-09 12:39:30 +02:00

4.2 KiB

Verwerfen und aufräumen

Verwerfen

Taste ++x++ in der Übersicht oder in der Detailansicht:

Sicherheitsabfrage vor dem Verwerfen

Oder auf der Kommandozeile:

pvesnap-recovery destroy 9101
pvesnap-recovery destroy 9101 -y      # ohne Rückfrage

destroy räumt vollständig auf:

1. Maschine stoppen

2. Gast samt aller Klone entfernen

3. Austauschlaufwerke freigeben (der Inhalt bleibt — sie gehören zu keiner Maschine)

4. Den Schutz der Quell-Snapshots wieder aufheben

5. Eintrag aus der Merkliste nehmen


Schritt 4 ist der wichtige

!!! info "Warum der Snapshot-Schutz wieder weg muss"

Ceph verlangt für einen Klon, dass der Quell-Snapshot geschützt ist
(`rbd snap protect`), und Proxmox setzt das beim Klonen selbst.

Bliebe der Schutz stehen, könnte die [Vorhaltezeit](../sichern/vorhaltezeit.md)
diesen Snapshot später nicht mehr löschen — im Protokoll stünde dann immer
wieder:

```
snapshot is protected
```

Solange eine Wiederherstellung existiert, ist ihr Quell-Snapshot also
**bewusst** unlöschbar. Danach nicht mehr.

Was destroy nicht anfasst

!!! success "Nur Maschinen mit dem Tag pvesnap-recovery"

Eine von Hand angelegte VM lässt sich damit nicht versehentlich löschen —
auch dann nicht, wenn sie zufällig eine VMID hat, die einmal einer
Wiederherstellung gehörte.

Austauschlaufwerke bleiben. Sie gehören zu keiner Maschine; ihr Inhalt überlebt jede Wiederherstellung. Sie werden nur wieder als frei markiert.

Das Original bleibt. Selbstverständlich — destroy fasst ausschließlich die Wiederherstellung an.


cleanup

Wird eine Wiederherstellung in der Proxmox-Oberfläche entfernt statt mit destroy, bleibt etwas liegen:

  • der Klon selbst kann übrigbleiben
  • der Quell-Snapshot bleibt geschützt — die Vorhaltezeit scheitert dann dauerhaft
pvesnap-recovery cleanup          # zeigt Gefundenes, fragt, räumt auf
pvesnap-recovery cleanup --all    # auch Datenträger ohne Elternteil
pvesnap-recovery cleanup -y       # ohne Rückfrage

Wonach gesucht wird

Nach Datenträgern der Form vm-<id>-disk-N, zu deren VMID es keine Konfigurationsdatei unter /etc/pve/nodes/*/ mehr gibt.

!!! info "Bewusst nicht über /cluster/resources"

Ein Gast auf einem abgemeldeten Node taucht dort unter Umständen nicht auf
— und dann würden die Platten einer **lebenden** Maschine als verwaist
gelten.

Die Konfigurationsdateien im Cluster-Dateisystem sind die verlässlichere
Quelle.

Zwei weitere Vorsichtsmaßnahmen:

Ohne Elternteil wird nichts von selbst entfernt dafür braucht es --all
Der Schutz eines Snapshots wird nur gelöst, wenn wirklich kein Klon mehr daran hängt sonst würde ein noch lebender Klon seine Grundlage verlieren

Wann man es braucht

  • Jemand hat eine Wiederherstellung in der Weboberfläche gelöscht
  • Ein destroy ist mittendrin abgebrochen (Host neu gestartet, Netz weg)
  • Im Protokoll des Dienstes taucht wiederholt snapshot is protected auf

Der letzte Fall ist der häufigste — und der, den man sonst lange sucht.


Aufräumen prüfen

pvesnap-recovery list                    # sind noch welche eingetragen?
qm list | grep -i recovery               # laufen noch welche?
rbd -p <pool> ls | grep -E 'vm-9[0-9]{3}-'   # liegen noch Klone herum?
rbd -p <pool> snap ls vm-101-disk-0      # steht noch ein Schutz?

Bei der letzten Ausgabe steht in der Spalte PROTECTED ein yes, solange ein Snapshot geschützt ist. Ohne zugehörigen Klon ist das ein Fall für cleanup.


Vor der Deinstallation

uninstall.sh warnt, wenn noch Wiederherstellungen offen sind. Der Grund ist derselbe:

!!! warning "Erst verwerfen, dann deinstallieren"

Nach dem Entfernen von pvesnap gibt es kein `destroy` und kein `cleanup`
mehr. Die Klone müsste man dann von Hand aufspüren, und den Snapshot-Schutz
von Hand lösen:

```bash
rbd -p <pool> snap unprotect vm-101-disk-0@auto-stuendlich-20260809-100000
```

Mit Werkzeug ist das ein Tastendruck. Ohne eine Stunde Sucherei.