Проблемы с монтажом дисков HFS +

У меня возникла проблема с монтированием некоторых накопителей hfsplus. Мне просто нужно, чтобы они смонтировали. (Отключить журнал не вариант). Я провел много исследований и выяснил, что из-за изменений с версии ядра 2.6.37 до 2.6.38 проблема началась.

Посмотрите эту ссылку на bugs.launchpad.net .

  • Прочтите раздел OS X из Windows 7
  • Восстановление файлов из форматированного раздела HFS +
  • Как я могу отформатировать раздел как HFS на ПК?
  • Как монтировать раздел HFS в Ubuntu как чтение / запись?
  • Смонтируйте диск HFSPlus с разрешениями на чтение и запись в Linux
  • Какая файловая система для совместного использования (чтение / запись) внешнего диска PC / Mac?
  • Поэтому я тестировал его с ядром Linux версии 2.6.37 и ниже, и он работал нормально, как надо.

    Версии выше, включая мою версию, которая является 3.2.0-54-generic (ubuntu 12.04), не работали нормально при установке изображений и дисков hfsplus. Поэтому мне нужен модуль hfsplus из рабочей версии, такой как 2.6.31-14-generic из ubuntu 9.

    Я использую эти команды в этом случае с изображением HFS + DD. Но я сделал это с другими физическими дисками hfsplus и другими изображениями. Все они работают с ядром 2.6.37 и ниже, но не с более новыми версиями:

    sudo losetup -d /dev/loop0 sudo losetup /dev/loop0 -o $((512*409640)) /folder/iMac_21.dd sudo mount -t hfsplus /dev/loop0 /mnt/hfs mount: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error dmesg | tail [84980.380254] hfs: invalid secondary volume header 

    Я должен добавить эту информацию в «доказательство», что проблема возникает после ядра 2.6.38. Посмотри на это! Это драйвер NTFS и HFS + от Paragon.

     "What's new in Paragon NTFS & HFS+ for Linux 8.5: Support for modern Linux Kernels (up to 2.6.38);" paragon-software.com/home/ntfs-linux-per/features.html 

    Чтобы устранить проблему, я просто скопировал /lib/modules/2.6.27/kernel/fs/hfsplus.ko в мое текущее ядро ​​3.2.0-54. Но это не сработало. Как получить рабочую часть hfsplus в мое текущее ядро ​​linux 3.2.0-54 ubuntu 12.04? Или как исправить мое ядро ​​для работы так же, как в 2.6.37?

    Лучший намек, который я видел, это тот .

  • Ограничьте каждого пользователя только своей собственной домашней папкой
  • Как автоматически перезапустить фоновый процесс linux, если он не работает?
  • Почему «source <(cmd)» работает, но не «$ (cmd)»
  • Создание установочного флеш-диска Windows XP в Linux
  • Как разрезать видеофайлы по кадрам
  • Установка USB-устройства в Linux
  • 2 Solutions collect form web for “Проблемы с монтажом дисков HFS +”

    Этот вопрос немного стар, но я столкнулся с ним, пытаясь установить раздел HFS + в тех же обстоятельствах и нашел решение. Я не совсем уверен, как это связано с версией ядра, мое – 3.13 (3.13.7-1 x86_64, Debian).

    Короткий ответ

    Укажите размер раздела и его смещение.

    Длительный ответ

    Сначала получите информацию раздела из Parted в байтах; Вам нужны номера «Пуск» и «Размер». Вот пример Parted session (как вы можете догадаться, мой образ жесткого диска – /mnt/macbook.dd):

     $ /sbin/parted /mnt/macbook.dd WARNING: You are not superuser. Watch out for permissions. GNU Parted 2.3 Using /mnt/macbook.dd Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) unit Unit? [compact]? b (parted) p Model: (file) Disk /mnt/macbook.dd: 160041885696B Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name Flags 1 20480B 209735679B 209715200B fat32 EFI system partition boot 2 209735680B 159907647487B 159697911808B hfs+ Customer 

    Если я попытаюсь установить раздел, предоставив только смещение (начало), я получаю ту же ошибку, что и вы:

     # mount -v -t hfsplus -o ro,loop,offset=209735680 /mnt/macbook.dd /media/mac mount: enabling autoclear loopdev flag mount: going to use the loop device /dev/loop0 mount: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so # dmesg | tail -n2 [117791.463123] hfsplus: invalid secondary volume header [117791.463132] hfsplus: unable to find HFS+ superblock 

    Кстати, вам не нужно использовать losetup, mount делает это для вас автоматически. Теперь, если я добавлю размер раздела (sizelimit), он отлично работает:

     # mount -v -t hfsplus -o ro,loop,offset=209735680,sizelimit=159697911808 /mnt/macbook.dd /media/mac mount: enabling autoclear loopdev flag mount: going to use the loop device /dev/loop0 /mnt/macbook.dd on /media/mac type hfsplus (ro,offset=209735680,sizelimit=159697911808) 

    Чтобы кто-то еще наткнулся на этот вопрос, ища одно и то же сообщение об ошибке, обратите внимание, что есть еще одна возможная причина для этой ошибки.

    Хотя ответ mcy должен работать, если раздел на самом деле является разделом HFS +, начиная с OSX Yosemite, тип раздела по умолчанию для Mac – это «Core Storage», который используется для обработки логических томов. Это означает, что то, что вы на самом деле хотите монтировать, – это логический том (с использованием файла HFS + filesytem) внутри раздела «Основное хранилище».

    Чтобы узнать, имеет ли ваш раздел тип «Apple Core Storage», вы можете использовать gdisk : AF05 – это код для «Apple Core Storage», а af00 – код для «Apple HFS / HFS +».

    Если на вашем диске используется «Ядровое хранилище Apple», вы можете использовать руководство, приведенное в этом ответе, для его установки.

    Давайте будем гением компьютера.