Ihr Vorhaben

Sie haben eine Image einer Festplatte erstellt. Die Festplatte ist partitioniert. Sie wollen eine der Partionen der Imagedatei mounten.

Das Problem dabei

Linux kann über /dev/loop? zwar aus einer Imagedatei ein Blockgerät machen, welches man dann mounten kann. Die /dev/loop?-Geräte kennen aber keine Partitionen.

Die Lösung

Beim Mounten können Sie mit den Optionen offset= und sizelimit= beim Mounten mittels Loopback den Bereich in der Imagedatei einschräken. Wenn Sie diesen Bereich genau auf die Grenzen einer Partition legen, können Sie diese somit mounten.

Die Größe und Lage der Partitionen können Sie mit sfdisk ermitteln (hier am Beispiel des Images eines USB-Sticks mit nur einer Partition):

root@linux# sfdisk -d /tmp/image
# Partitionstabelle von /tmp/image
unit: sectors

/tmp/image1 : start=       32, size=    20448, Id=83, bootable
/tmp/image2 : start=        0, size=        0, Id= 0
/tmp/image3 : start=        0, size=        0, Id= 0
/tmp/image4 : start=        0, size=        0, Id= 0

Die Angaben sind hier in Blöcken zu 512 Byte. Die Umrechnung kann z.B. die Shell für Sie machen. Das Mounten erfolgt mit folgendem Befehl:

root@linux# echo $((32 * 512)) $((20448 * 512))
16384 10469376
root@linux# mount -o loop,offset=16384,sizelimit=10469376 /tmp/image /mnt

Wissensbank Linux

Diese Artikel wurden vom Gründer von Checkmk vor vielen Jahren geschrieben. Sie sind immer noch gültig und haben deshalb weiterhin ihr Zuhause auf dieser Webseite. Mathias hat in der Zwischenzeit die Monitoringlösung Checkmk entwickelt

Mehr zu Checkmk