从物理磁盘的原始DD映像文件挂载分区


11

我有从原始HDD映像(/ dev / sdb)中获取的DD映像。该映像文件包含我需要挂载的XFS文件系统。它太大了,无法还原到磁盘(2.6TB img文件),因此我想使用环回挂载它。

但是,分区表成为问题。我试图使用parted和fdisk -lu来确定分区偏移量。Parted返回“无法识别的磁盘标签”,fdisk -lu向我显示了一个空白分区表。

您如何建议找到分区开始位置,以便可以使用-o循环将其挂载


sfidsk没有显示分区表。“未找到分区”我使用头-c 15000 sdb.img来查看我正在查看的内容。然后,我做了一些研究,发现它是LVM卷组元数据。包含诸如dev_size,pe_start,pe_count之类的内容。等等
coderego 2011年

您如何使用这些工具?
基思

我正在通过带有sudo的bash使用工具。
coderego 2011年

Answers:


6

kpartx命令将为您完成所有工作,包括检测分区的位置以及使用适当的偏移量设置环路设备。

# 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

3

查看testdisk是否可以找到您的分区标签。您可以尝试看看是否kpartx可以先找到并启用它:

# kpartx -a -v image

还记得在图像的副本上尝试这两件事。您不想通过测试破坏备份映像。


1

您可以使用sfdisk转储映像的分区表。任何*fdisk变种都可以做到,但是有些变种比其他变种抱怨更多。这将使您能够计算分区的偏移量。


0

运行file - </dev/sdb以查看磁盘上实际有什么,因为它似乎不是具有PC分区系统的磁盘的映像。

根据您的评论,您可能拥有LVM物理卷。因此,首先将块设备与其关联losetup,然后将循环设备注册为物理卷并从那里继续。

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.