J'ai un problème de montage des lecteurs hfsplus. J'ai juste besoin d'eux monté en lecture seule. (Désactivation du journal n'est pas une option) J'ai fait beaucoup de recherches et a découvert qu'en raison de modifications de la version 2.6.37 du noyau à 2.6.38, le problème a commencé.
Regardez ce lien à bugs.launchpad.net .
Je l'ai donc testé avec la version 2.6.37 de Kernel Linux et basculant et cela a fonctionné bien comme il le devrait.
Versions ci-dessus, y compris ma version, qui est 3.2.0-54-générique (Ubuntu 12.04) n'a pas fonctionné bien avec le montage des images HFSPLUS et des disques HFSPLUS. J'ai donc besoin du module HFSplus d'une version de travail comme 2.6.31-14-générique de Ubuntu 9.
J'utilise ces commandes dans ce cas avec une image HFS + DD. Mais je l'ai fait avec d'autres lecteurs physiques hfsplus et autres images. Ils travaillent tous avec le noyau 2.6.37 et la baisse mais pas avec des versions plus récentes:
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
Je dois ajouter ces informations à "Preuve" que le problème est après le noyau 2.6.38. Regardez cela. C'est un conducteur NTFS und HFS + de 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
Pour résoudre le problème, je viens de copier /lib/modules/2.6.27/kernel/fs/hfsplus.ko
à mon noyau actuel de 3,2,0-54-générique. Mais ça n'a pas marché. Comment puis-je obtenir la partie HFSplus de travail dans mon Kernel Ubuntu de 3,2,0-54-générique actuel? Ou comment réparer mon noyau pour travailler comme en 2.6.37?
Le meilleur indice que j'ai vu était celui-ci .
Cette question est un peu ancienne mais je suis tombée sur elle tout en essayant de monter une partition HFS + dans les mêmes circonstances et trouva la solution. Je ne suis pas tout à fait sûr de savoir comment il est lié à la version du noyau, le mien est de 3.13 (3.13.7-1 x86_64, Debian).
Fournissez la taille de la partition ainsi que son décalage.
Premièrement, obtenez les informations de la partition depuis séparées, en octets; Vous avez besoin du début et des numéros de taille. Voici un exemple de session séparée (comme vous pouvez le deviner, mon image de disque dur est /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
Si j'essaie de monter la partition en fournissant uniquement le décalage (Démarrer), je reçois la même erreur que vous:
# 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
Au fait, vous n'avez pas besoin d'utiliser des lossers, le mont le fait pour vous automatiquement. Maintenant, si j'ajoute la taille de la partition (Sizelimit), cela fonctionne parfaitement:
# 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)
Pour toute autre personne qui a trébuché sur cette question lors de la recherche du même message d'erreur, notez qu'il existe une autre cause possible de cette erreur.
Bien que la réponse fournie par MCY fonctionne si la partition est en fait une partition HFS +, en commençant par OSX Yosemite, le type de partition par défaut pour un Mac est "Stockage de base", utilisé pour gérer des volumes logiques. Cela signifie que ce que vous voulez réellement monter est un volume logique (à l'aide de HFS + FilesYtem) à l'intérieur de la partition "Stockage".
Pour voir si votre partition est de type "Apple Core Storage", vous pouvez utiliser gdisk
: AF05
est le code du stockage "Apple Core Storage", tandis que af00
est le code pour "Apple HFS/HFS +".
Si votre disque utilise "Storage Apple Core", vous pouvez utiliser le guide fourni dans cette réponse pour le monter.