Proxmox VM-Backup mounten.
Manchmal kann es vorkommen, dass man aus einem Proxmox VM-Backup, dass man hoffentlich regelmäßig durchführen
lässt, nur einzelne Dateien benötigt.
Wenn man einmal weiß wie es geht, ist es im Grunde ganz einfach.
Zunächst entpackt man das Backup-Archiv an einen Ort seiner Wahl.
Quellpfad und Dateiname müssen
natürlich an die jeweiligen Gegebenheiten angepasst werden und das Zielverzeichnis muss unabhängig vom
verwendeten Kompressionsverfahren bereits vorhanden sein.
Verwendet man gzip-Archive sieht der Aufruf so aus.
# gzip -dc /mnt/sdb/dump/vzdump-qemu-100-2022_04_22-04_00_00.vma.gz > ./restore/vzdump-qemu-100-2022_04_22-04_00_00.vma |
Die Option "c" gibt an, dass das Archiv erhalten bleiben soll.
Verwendet man das Kompressionsverfahren Zstandard (zstd) sieht der Befehl so aus.
# zstd -d /mnt/sdb/dump/vzdump-qemu-100-2022_04_22-04_00_00.vma.zst -o ./restore/vzdump-qemu-100-2022_04_22-04_00_00.vma |
Nun muss das vma Archiv ebenfalls noch entpackt werden um eine raw Datei zu erhalten.
# vma extract ./restore/vzdump-qemu-100-2022_04_22-04_00_00.vma -v ./restore/vm-100 |
Nach dem entpacken lässt man sich den Inhalt anzeigen.
# ls -la ./restore/vm-100 insgesamt 3558976 drwxr-xr-x 2 root root 4096 22. Apr 09:50 . drwx------ 3 root root 4096 22. Apr 09:50 .. -rw-r--r-- 1 root root 34359738368 22. Apr 09:50 disk-drive-scsi0.raw -rw-r--r-- 1 root root 1285 22. Apr 09:50 qemu-server.conf |
Interessant ist dabei nur der Name des Laufwerkes, welches gemountet werden soll.
Man lässt sich nun die
einzelnen Partitionen des Laufwerks anzeigen, um zu wissen, welche man mounten muss.
Ab Proxmox 7 ist
standardmäßig gdisk installiert, bei vorherigen Versionen fdisk. Die Aufrufoptionen sind bei gdisk und fdisk
identisch.
# gdisk -l
./restore/vm-100/disk-drive-scsi0.raw GPT fdisk (gdisk) version 1.0.6 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Disk ./restore/vm-100/disk-drive-scsi0.raw: 67108864 sectors, 32.0 GiB Sector size (logical): 512 bytes Disk identifier (GUID): BE6D1063-FC6A-42E9-A221-AABDB6B71C16 Partition table holds up to 128 entries Main partition table begins at sector 2 and ends at sector 33 First usable sector is 34, last usable sector is 67108830 Partitions will be aligned on 2048-sector boundaries Total free space is 4029 sectors (2.0 MiB) Number Start (sector) End (sector) Size Code Name 1 2048 264191 128.0 MiB 8300 boot 2 264192 2361343 1024.0 MiB 8200 swap 3 2361344 67106815 30.9 GiB 8300 root |
Altmodisch aber bewährt, Boot, Swap und Root Partition.
Nun soll die Root Partiton gemountet werden.
Zu beachten ist, dass je nach der zu mountender Partition, deren Startsektor im Mountbefehl angegeben werden
muss. Zudem muss die Sektorgröße (Sector size) angegeben werden. Wenn noch nicht geschehen, wird vorher das
Zielverzeichnis erstellt.
# mkdir /mnt/vm-100 # mount ./restore/vm-100/disk-drive-scsi0.raw -o offset=$((2361344*512)) /mnt/vm-100 |
Damit ist die Root Partition des Backup unter /mnt/vm-100 gemountet und man kann ganz normal damit Arbeiten.