Skip to main content

Reinstalling Proxmox VE Without Losing VM/LXC Data (ZFS Only)

TODO – IN ARBEIT

Warnung: Diese Methode gilt nur, wenn VMs und LXCs auf einem separaten ZFS-Pool liegen, der nicht dein Proxmox-Boot-Pool (rpool) ist.
Wählst du während der Installation die falschen Festplatten aus, löschst du deine VM-/Container-Daten für immer.

Geltungsbereich:
Entwickelt für Proxmox-Systeme mit einem einzigen Knoten, die ZFS nutzen.
Bei einem Cluster mit mehreren Knoten brauchst du zusätzliche Schritte für die Cluster-Wiederherstellung – die werden hier nicht behandelt.


Basisszenario

  • Host-Typ: Einzelner Proxmox VE-Knoten mit ZFS

    • Boot-Pool: rpool – ZFS-Spiegel (2× SSD)
    • Datenpool: zfs-data – RAIDZ2 (4× NVMe) – hier liegen alle VM-/LXC-Festplatten
    • Ziel: Proxmox VE neu installieren ohne die VM-Festplatten-Images sichern zu müssen

Schritt 1: Wichtige Konfigurationsdateien sichern

Die VM- und LXC-Metadaten (also quasi die „Shells“) liegen hier:

/etc/pve

Diese Dateien enthalten Namen, Hardware, Festplatten und Ressourcen.

VM-Konfigurationsdateien

/etc/pve/qemu-server/*.conf

LXC-Konfigurationsdateien

/etc/pve/lxc/*.conf

Empfohlene zusätzliche Sicherungen

/etc/network/interfaces
/etc/hosts
/etc/pve/storage.cfg

Tipp: Nutze scp, rsync oder WinSCP, um die Dateien an einen sicheren Ort zu kopieren.


Schritt 2: Alle Ressourcen sauber herunterfahren

Damit die Daten konsistent bleiben:

# Alle VMs stoppen
qm stop $(qm list | awk ‚NR>1 {print $1}‘)

# Alle LXCs stoppen
pct stop $(pct list | awk ‚NR>1 {print $1}‘)

Danach den Host ausschalten:

shutdown -h now

Schritt 3: Proxmox VE (sehr vorsichtig) neu installieren

  1. Von der Proxmox VE-ISO booten

  2. Bei der Festplattenauswahl:

    • Wähle nur die SSDs aus, die zu rpool gehören
    • Wähle auf keinen Fall die NVMe-Platten aus zfs-data aus
  3. Rest der Installation ganz normal durchlaufen

Wichtig: Falsche Festplatten auswählen = deine VM-Daten sind für immer weg.


Schritt 4: Den vorhandenen ZFS-Datenpool importieren

Nach dem ersten Boot:

zpool import

Wenn zfs-data automatisch da ist → super, weiter.
Falls nicht:

zpool import -f zfs-data

Check danach:

zpool status zfs-data
zfs list

Schau, ob die Datensätze mit deinen VM-Festplatten da sind.


Schritt 5: Konfigurationsdateien zurückspielen

Kopier die gesicherten Dateien wieder zurück:

scp qemu/*.conf root@<new-proxmox-ip>:/etc/pve/qemu-server/
scp lxc/*.conf root@<new-proxmox-ip>:/etc/pve/lxc/

Die sollten sofort in der Weboberfläche auftauchen.


Schritt 6: Den ZFS-Pool wieder als Speicher hinzufügen

Option A: Web-GUI (empfohlen)

Rechenzentrum → Speicher → Hinzufügen → ZFS
Auswählen: zfs-data
Inhalt: Festplatten-Image, Container

Option B: storage.cfg wiederherstellen

scp storage.cfg root@<new-proxmox-ip>:/etc/pve/storage.cfg
systemctl restart pve-cluster

Schritt 7: Prüfen, ob /etc/pve funktioniert (sehr wichtig)

Falls /etc/pve leer aussieht:

systemctl status pve-cluster
systemctl status corosync
journalctl -xe

Das Cluster-Dateisystem muss laufen, sonst kannst du die Konfigurationsdateien nicht nutzen.


Abschließende Überprüfung: Test-VM/LXC starten

qm start 100
pct start 103

Starten beide sauber → System ist wieder einsatzbereit.


Hinweis zur Wiederherstellung

Falls du die Konfigurationssicherungen verloren hast, kannst du die Metadaten eventuell trotzdem retten, indem du schaust:

/zfs-data

oder:

zfs list

Die Datensatz-Namen entsprechen meist den VM-IDs.


Zusammenfassung

Wenn du die Konfigurationsdateien sicherst und den alten ZFS-Datenpool einfach wieder importierst, kannst du Proxmox VE neu installieren ohne riesige VM-Disk-Images zu kopieren. Das spart dir massiv Zeit, Bandbreite und Ausfallzeit. Die ganzen Prüfschritte machen den Prozess deutlich sicherer und wiederholbar.