我正在尝试将混合 .dmg 文件中的 HFS+ 分区挂载到本地文件夹。
我在其中找到了一个 HFS+ 超级块(按照此处的说明)并尝试将其与 /dev/loop0 关联,然后挂载:
losetup -o MY_HFS_SUPERBLOC_OFFSET /dev/loop0 image.dmg
mount -t hfsplus /dev/loop0 /mnt/cdrom/
但是,当我从上面的列表中运行最后一个命令时,我收到了这条消息:
mount: 错误的 fs 类型、错误的选项、/dev/loop0 上的错误超级块、缺少代码页或帮助程序或其他错误 在某些情况下,在 syslog 中找到有用的信息 - 尝试 dmesg | 尾巴左右
dmesg | 尾巴:
[12130.800828] hfs:加载目录文件失败
我很肯定我指定了正确的 MY_HFS_SUPERBLOC_OFFSET,我遵循了 Apple 提供的关于 HFS+ 分区结构的技术说明,并在 .dmg 文件的末尾找到了卷标头的匹配副本。
我将如何安装此图像?
所有建议表示赞赏!
不相信这会有很大帮助,但根据 HFS 驱动程序的来源,它似乎很难找到该技术说明中详述的 b-tree。不幸的是,我什至没有这样的文件可以试验。
第372章
第373章
374 printk(KERN_ERR“hfs:加载目录文件失败\n”);
375 转到清理;
第376章
不幸的是,我基于此挖掘的每个链接都在谈论使用 Linux 实时磁盘对损坏的 HFS 分区进行 fsck,而不是安装 dmg 映像。
愚蠢的答案,但是如果您尝试这样做会发生什么:
即使在将 DMG 解压缩为普通磁盘映像后,我也遇到了类似的问题。原来问题是因为我的 DMG 是混合 (FAT+HFS) 图像并且没有被 HFS 驱动程序正确识别。
查看以下链接以了解执行此操作的方法 [ http://www.64lines.com/mounting-hfs-plus ]
一些谷歌搜索发现Acetone ISO是一种开源工具,可以处理 DMG 格式的 ISO 图像。我不知道它是否会理解 HFS+ 元数据,但如果您只需要文件内容,也许它会完成这项工作?
Mac OS/Apple 的 DMG 文件格式是一种压缩文件格式。似乎您在压缩文件中意外发现了正确的签名序列,并且根据您引用的文章向后移动了 1024 个字节以分区开始偏移量。
您可以在 windows 和 linux 下使用 p7zip 解压缩文件 dmg(我没有在 linux 下尝试过)或使用 dmg2iso 或其他实用程序将其转换为未压缩的 iso。
希望,这有帮助...
此致...