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

我用dd完成了磁盘镜像:

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

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

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

我已经尝试使用Windows工具如ext2explorer或直接安装图像,但我无法访问数据。

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

在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

只需用您想要的分区号replaceX

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

所有最近的内核(它被添加到2.6.2x左右)支持循环设备上的分区表。 只有默认是禁用这个。

无论它支持max_part参数, modinfo loop给你提供信息。 如果有,请添加到modprobe.conf

选项循环max_part = 16

并做rmmod loopmodprobe loop (所有循环设备必须是未使用的工作)。 这样,使用循环设备安装单个图像时,所有分区将自动可用:

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