Um ein Datenträgerabbild bzw. ein disk image im Form einer *.img-Datei unter Linux zu mounten um dann auf dessen Inhalte zugreifen zu können, hat sich für mich folgendes Vorgehen bewährt:
Zuerst einmal ein paar Informationen über das Image anzeigen lassen:
Das ergibt dann folgende Ausgabe:
Uns interessieren nur die Start-Sektoren, also zum einen der Startsektor 2048 der FAT32 Partition und zum einen der Sektor 188416 der Linux Partition.
Um diese beiden Partitionen zu mounten erstellt man sich zunächst 2 Mountpoints:
Dann kann man auch schon die beiden Partitionen mounten. Den Offset mit den zuvor ermittelten Startsektoren anpassen (in meinem Fall 2048 und 188416). Solltet ihr eine andere Sektorgröße als 512 bytes haben, gilt es diesen Wert ebenfalls anzupassen.
Und schon kann man ganz normal über die Mountpoints auf die Daten zugreifen.
Great help just in time! Thx.
Vielen Herzlichen Dank! Das ist die einfachste Lösung die ich bisher zu diesem Thema gefunden habe. Leider lassen sich bei mir beide Partitionen nicht gleichzeitig mounten, da ich sonst die Meldung “overlapping loop device exists” bekomme.
Kann mich den Vorpostern nur anschlissen – Genial einfach erklärt. Hat mir schon viele Umstände erspart. Hatte früher immer zusätzlich zum kompletten Disk-Image die einzelnen Partitionen für evetuelles Einhängen ins Dateisystem gespeichert. Das kann ich mir nun sparen. Danke.
Super! Ich habe wie @WING_ART auch “overlapping loop device exists” bekommen. Das passiert wohl mit util-linux v2.29+. Hier muss man dann zum mounten der vorderen Partitionen den Parameter sizelimit angeben, im obigen Beispiel wären das dann:
mount -t auto -o loop,offset=$((2048*512)),sizelimit=$(((188416-2048)*512)) /path/to/img/arch.img /mnt/sd1
mount -t auto -o loop,offset=$((188416*512)) /path/to/img/arch.img /mnt/sd2
Danke für den Super-Tipp.
Musste allerdings eine Kopie des Images machen, wenn gleichzeitig mehrere Partitionen des selben Images gemountet werden sollten.