从 dd 创建的图像中解压文件和目录?

7 partition dd files

我使用dd.

我想知道我是否可以将镜像中的文件和目录卸载/解包到任何大小大于镜像大小的分区,以便我可以像访问原始分区一样访问文件和目录?

如果是,我该怎么做?


添加:

刚刚从链接中找到了一些有用的东西:

要从映像文件恢复分区或硬盘,只需交换参数“if”和“of”。例如从镜像文件“disk2.img”恢复/dev/sda的第一个分区:

dd if=disk2.img of=/dev/sda1
Run Code Online (Sandbox Code Playgroud)
  1. 我想知道如果分区of不是创建映像的原始分区会发生什么?

    • 考虑分区of小于或大于原始分区的情况。
    • 还要考虑分区中of已经有一些数据的情况。是否可以从分区中的特定位置恢复,以避免覆盖分区上的任何现有数据of
  2. 是否可以从dd其他类似应用程序(甚至是 Windows 软件)创建的图像中恢复?换句话说,创建的图像dd是否具有特定于的格式dd

谢谢!

bah*_*mat 13

这不是如何去做。

您要做的是将磁盘映像挂载为环回设备:

mount -o ro,loop -t ntfs disk.image /mnt/test
Run Code Online (Sandbox Code Playgroud)

映像的内容将可用/mnt/test(但您可以选择将其安装在您喜欢的任何位置)。您可以从中复制单个文件(或整个目录树)。使用umount /mnt/test1卸载它。

至于将映像恢复到新磁盘,您需要以与创建它相同的方式恢复它。即,如果您创建了整个块设备的映像(例如,sda),则恢复到整个块设备。如果您从一个分区(例如sda1)创建它,则仅将其恢复到一个分区。

话虽如此,如果您要进行分区,则需要在恢复之前在目标设备上创建它们。目标设备还需要与您创建的图像大小相同或更大。

如果你正在处理分区,那么你可以创建完全相同大小的分区,你会没事的。您可以从尚未分配给分区的任何块中创建其他分区。如果您要先处理整个块设备还原,请使用gparted* 修改分区。


* 我很确定gparted可以直接调整磁盘映像中的分区大小,但我更喜欢保持磁盘映像的原始状态。