我如何挂载分区的 dd 映像?

我如何挂载分区的 dd 映像?

几天前,我使用以下命令创建了我的某个磁盘(而不是整个磁盘)的一个分区(包含 HFS+ FS)的 dd 映像 -

dd conv=sync,noerror bs=8k if=/dev/sdc2 of=/path/to/img

我该如何安装它?我尝试了以下方法,但没有效果 -

mount -o loop,ro -t hfsplus /path/to/img /path/to/mntDir

它给了我

mount: wrong fs type, bad option, bad superblock on /dev/loop1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail or so

dmesg | tail给我 -

[5248455.568479] hfs: invalid secondary volume header
[5248455.568494] hfs: unable to find HFS+ superblock
[5248462.674836] hfs: invalid secondary volume header
[5248462.674843] hfs: unable to find HFS+ superblock
[5248550.672105] hfs: invalid secondary volume header
[5248550.672115] hfs: unable to find HFS+ superblock
[5248993.612026] hfs: unable to find HFS+ superblock
[5248998.103385] hfs: unable to find HFS+ superblock
[5249031.441359] hfs: unable to find HFS+ superblock
[5249036.274864] hfs: unable to find HFS+ superblock

我做错什么了吗?

我尝试搜索如何执行此操作,但我得到的所有结果仅谈论从完整磁盘映像中挂载分区,使用带有挂载的偏移选项 - 没有谈论映像本身是分区的情况。

谢谢。

附言:我正在运行 64 位 Arch Linux,并且原始磁盘的分区/dev/sdc2安装正常。

答案1

您可能首先必须使用 losetup 从文件创建设备,然后挂载该设备。以下是我挂载包含分区映像的备份文件的操作:

losetup /dev/loop1 /home/backup-file
mount /dev/loop1 /mnt/backup 

然后我的分区出现在 /mnt/backup 下,原始文件是 /home/backup-file。也许你可以用“mount -o loop”来完成这一切,但我没有成功,所以我单独使用了 losetup。

完成后,我卸载分区,然后使用“losetup -d /dev/loop1”删除循环,以防万一。

另外,你可以使用 losetup 来找出系统中当前空闲的循环设备,使用 losetup -f

让我知道这个是否奏效。

答案2

跑步mount -o loop应该能完成你想要做的事,但显然事实并非如此。

这使我相信您尝试使用的文件系统驱动程序无法正常工作。

这可能有点牵强,我不知道 HFS+ 是如何工作的。。但是 HFS+ 有可能将分区存储在分区内吗?可能类似于 LVM?

我想到的另外一件事就是加密。似乎 HFS+ 分区可以加密。这对你来说有什么印象吗?

相关内容