如何查看用 dd 克隆的完整磁盘数据(多个分区)

如何查看用 dd 克隆的完整磁盘数据(多个分区)

我有一个使用 dd 完成的磁盘映像:

dd if=/dev/sda of=/mnt/fulldisk.img

/dev/sda有一些分区(Windows+Linux)

我的问题是:我需要知道图像是否做好,我该如何访问数据?(尤其是 Linux 数据)

我尝试使用 ext2explorer 等 Windows 实用程序或直接安装映像,但无法访问数据。

有没有办法做到这一点(使用 Windows 或 Linux)?

答案1

在 Linux 中,您可以使用kpartx。首先使用 来kpartx -l /mnt/fulldisk.img查看它是否可以识别分区布局。如果可以,则kpartx -a /mnt/fulldisk.img使您的分区在分区号/dev/mapper/loop0pX所在的位置可用。X

然后你可以使用以下方式挂载这些分区

mount -o loop /dev/mapper/loop0pX /some/mount/point

只需替换X为您所需的分区号。

完成后,使用umount /some/mount/pointkpartx -d /mnt/fulldisk.img正确断开磁盘映像。

答案2

所有较新的内核(大约在 2.6.2x 中添加)都支持循环设备上的分区表。只有默认设置是禁用此功能。

modinfo loop应该会为您提供信息,无论它支持什么max_part参数。如果支持,请添加modprobe.conf

选项循环 max_part=16

并执行rmmod loopmodprobe loop(所有循环设备必须未使用才能使其工作)。这样,当使用循环设备安装单个映像时,所有分区将自动可用:

losetup /dev/loop0 /mnt/fulldisk.img
挂载 /dev/loop0p1 /mnt/part1
挂载 /dev/loop0p2 /mnt/part2

相关内容