Mounten einer Partition aus einer unformatierten DD-Image-Datei einer physischen Festplatte

11

Ich habe ein DD-Image vom Roh-HDD-Image (/ dev / sdb). Diese Image-Datei enthält ein XFS-Dateisystem, das ich bereitstellen muss. Es ist viel zu groß, um es auf Festplatten wiederherzustellen (2,6 TB IMG-Datei), daher möchte ich es mithilfe von Loopback bereitstellen.

Die Partitionstabelle wird jedoch zu einem Problem. Ich habe versucht, den Partitionsversatz sowohl mit parted als auch mit fdisk -lu zu bestimmen. Parted gibt "nicht erkannte Plattenbezeichnung" zurück, fdisk -lu zeigt mir eine leere Partitionstabelle.

Wie würden Sie empfehlen, den Partitionsstart zu finden, damit ich ihn mit der Schleife -o mounten kann?

Coderego
quelle
sfidsk zeigt mir die Partitionstabelle nicht an. "Keine Partitionen gefunden" Ich habe head -c 15000 sdb.img verwendet, um zu sehen, was ich sah. Ich habe dann einige Nachforschungen angestellt und festgestellt, dass es sich um LVM-Volumegruppen-Metadaten handelt. Enthält Dinge wie dev_size, pe_start, pe_count. etc
Coderego
Wie verwenden Sie diese Tools?
Keith
Ich benutze die Werkzeuge durch Bash mit Sudo.
Coderego

Antworten:

6

Der kpartxBefehl erledigt die gesamte Arbeit für Sie, um festzustellen, wo die Partitionen vorhanden sind, und um Loop-Geräte mit den entsprechenden Offsets einzurichten.

# kpartx -l /dev/ganderData/example-sysdisk
ganderData-example--sysdisk-1 : 0 497952 /dev/ganderData/example-sysdisk 63
ganderData-example--sysdisk-2 : 0 62412525 /dev/ganderData/example-sysdisk 498015

# kpartx -a /dev/ganderData/example-sysdisk
# mount /dev/mapper/ganderData-example--sysdisk-2 /mnt/tmp
MikeyB
quelle
3

Überprüfen Sie, ob testdisk Ihre Partitionsbezeichnungen finden kann. Sie können versuchen zu sehen, ob kpartxSie es zuerst finden und aktivieren können:

# kpartx -a -v image

Denken Sie auch daran, diese beiden Dinge auf einer Kopie des Bildes auszuprobieren. Sie möchten Ihr Backup-Image nicht mit Tests zerstören.

Core-Dump
quelle
1

Sie können sfdiskdie Partitionstabelle des Bildes sichern. Ziemlich gut, jede der *fdiskVarianten wird dies tun, aber einige beschweren sich mehr als andere. Auf diese Weise können Sie den Versatz der Partition berechnen.

BillThor
quelle
0

Führen Sie aus, um file - </dev/sdbzu sehen, was sich tatsächlich auf der Festplatte befindet, da es sich anscheinend nicht um ein Image einer Festplatte mit einem PC-Partitionssystem handelt.

In Anbetracht Ihres Kommentars haben Sie wahrscheinlich ein physisches LVM-Volume. Ordnen Sie ihm also zuerst ein Blockgerät zu losetup, registrieren Sie dann das Schleifengerät als physisches Volume und fahren Sie von dort aus fort.

losetup -fv /path/to/image/file
pvs  # will show /dev/loop99 (for some value of 99) as a physical volume
vgs  # will show the VG(s) on /dev/loop99
lvs  # will show the LV(s) on the VG(s) on /dev/loop99
mount /dev/mapper/groupname-volumename /mnt
…
vgchange -an groupname
losetup -u /dev/loop99
Gilles 'SO - hör auf böse zu sein'
quelle