Смонтировать гибридный ISO (ISO 9660/HFS+) под Linux

Я пытаюсь смонтировать раздел HFS+ в гибридном файле.dmg в локальную папку.

Я нашел в ней суперблок HFS+ (согласно инструкциям здесь) и попытался связать его с /dev/loop0, а затем смонтировать:

losetup -o MY_HFS_SUPERBLOC_OFFSET /dev/loop0 image.dmg
mount -t hfsplus /dev/loop0 /mnt/cdrom/

Однако, когда я выполнил последнюю команду из списка выше, я получаю это сообщение:

mount: неверный тип fs, неверный параметр, плохой суперблок в /dev/loop0, отсутствующая кодовая страница или вспомогательная программа или другая ошибка. В некоторых случаях полезная информация находится в системном журнале - попробуйте dmesg | хвост или около того

Dmesg | хвост:

[12130.800828] hfs: не удалось загрузить файл каталога

Я уверен, что я правильно указал MY_HFS_SUPERBLOC_OFFSET, я следовал этой технической заметке Apple по структуре разделов HFS+ и нашел соответствующую копию заголовка тома в конце файла.dmg.

Как бы я смонтировать этот образ?

Все предложения приветствуются!

5 ответов

Тупой ответ, но что произойдет, если вы просто попытаетесь сделать:

mount -t hfsplus image.dmg /mnt/cdrom

Не уверен, что это сильно поможет, но, основываясь на источнике драйвера для HFS, похоже, что ему трудно найти b-дерево, подробно описанное в этой технической заметке. К сожалению, у меня нет такого файла, чтобы даже экспериментировать.

372 HFSPLUS_SB (sb).cat_tree = hfs_btree_open (sb, HFSPLUS_CAT_CNID);

373 if (! HFSPLUS_SB (sb).cat_tree) {

374 printk (KERN_ERR "hfs: не удалось загрузить файл каталога \ n");

375 очистных сооружений;

376}

К сожалению, каждая ссылка, которую я нашел, основанная на этом, говорит об использовании живых дисков Linux для fsck поврежденных разделов HFS, а не при монтировании образа dmg.

У меня была похожая проблема даже после распаковки DMG до нормального образа диска. Выяснилось, что проблема заключалась в том, что мой DMG был гибридным (FAT+HFS) образом и неправильно распознавался драйвером HFS.

Проверьте следующую ссылку для способа сделать это [ http://www.64lines.com/mounting-hfs-plus ]

Некоторые прибегают к поиску AcetoneISO как инструмента с открытым исходным кодом, который может работать с ISO-изображениями в формате DMG. Я не знаю, получит ли он метаданные HFS+, но если все, что вам нужно, это содержимое файла, возможно, он справится с этой задачей?

Формат файла DMG в Mac OS/Apple - это сжатый формат файла. Похоже, вы нашли случайно правильную последовательность подписи в сжатом файле и прошли 1024 байта назад, чтобы сместить начало смещения в соответствии со статьей, на которую вы ссылались.

Вы можете распаковать файл dmg с помощью p7zip в Windows и Linux (я не пробовал в Linux) или преобразовать его в несжатый iso с помощью dmg2iso или другой утилиты.

Надеюсь, это поможет...

С уважением...

Другие вопросы по тегам