我正在运行 Ubuntu 并可以访问 Windows 10。我有一个使用创建的磁盘映像GNU ddrescue
。我尝试foremost
在图像上使用,foremost
似乎创建了一个以它遇到的每种不同文件类型命名的单独文件夹,并将匹配的文件塞入其中。
这完全破坏了原始文件夹树,并且使所有生成的文件变得难以理解不可能的。
我的图片文件里有大量照片。它们存储在多个文件夹中,每个文件夹的名称都标明了照片的拍摄地点、拍摄时间等。我真的需要保留原始文件夹树。
谁能帮我这个?
内容fdisk -l mybackup.img
Disk backup.img: 424.5 GB, 424541814784 bytes
255 heads, 63 sectors/track, 51614 cylinders, total 829183232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xeea5da13
Device Boot Start End Blocks Id System
backup.img1 63 976768064 488384001 7 HPFS/NTFS/exFAT
答案1
免责声明
ddrescue
我的回答适用于使用(或dd
)拍摄的图像完全准确(没有读取错误)、底层分区和文件系统健康的情况。事实上,这不是“恢复”,而是“获得访问权限”。对于磁盘或文件系统有故障的人来说,这可能不适用。
实际答案
提供的fdisk
输出显示镜像大小太小,无法容纳分区。我理解这个问题与这个制作完整映像后,您可以简单地挂载底层分区:
sudo mount -o ro,offset=$((512*63)) mybackup.img /mnt
笔记:
- 以只读方式挂载(
ro
)以避免意外修改图像。 - 您的映像包含一个分区;
63
其偏移量以扇区大小单位表示(512
)。 - 挂载点是
/mnt
;当然您也可以在其他地方挂载。
现在您应该能够看到文件和目录结构/mnt/
(或您决定挂载的任何位置)。使用cp -r
或mc
其他工具进行复制。
打扫
完成后,通过以下方式卸载:
sudo umount /mnt