web-dev-qa-db-fra.com

Monter un disque HFSPlus avec des autorisations de lecture / écriture sous Linux

Je réalise que cette question est de nature similaire à cette question , mais j'espère attirer plus spécifiquement l'attention sur un problème supplémentaire dans l'un des commentaires de cette réponse à cette question .

J'ai sorti le disque dur d'un ancien MacbookPro et j'essaie de le monter sur mon système d'exploitation Elementary, où il est automatiquement installé en lecture seule. Je veux obtenir un accès r-w à ce lecteur.

En suivant la procédure indiquée dans la réponse liée à ci-dessus, après avoir exécuté

Sudo mount -t hfsplus -o remount,force,rw /dev/sdc2 /media/myharddrive

Je reçois

mount: warning: /media/myharddrive seems to be mounted read-only.

Cela a été noté par un commentaire sur cette question, mais n'a pas attiré suffisamment d'attention pour récompenser une réponse. Comment se fait-il qu'il soit encore en lecture seule? N’est-ce pas ce que force garantit?

Peuvent être pertinents ou non:

J'ai également exécuté Sudo fsck.hfsplus -f /dev/sdc2 après le message lié à la réponse et ajouté l'indicateur -f après que fsck ne veuille pas effectuer de vérification d'un système journalisé. cela a bien fonctionné jusqu'à

** /dev/sdc2 ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. Orphaned indirect node iNode28863935 ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** Repairing volume. ** Rechecking volume. ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** The volume myharddrive was repaired successfully. *** glibc detected *** fsck.hfsplus: munmap_chunk(): invalid pointer: 0x00000000022f9e30 ***

suivi par une trace et une carte mémoire. L'appel fsck semble n'avoir eu aucun effet sur mon lecteur, ni bon ni mauvais.

Tout pointeur sur la façon d'obtenir un accès en lecture-écriture sur mon lecteur, sans démarrer OSX , serait grandement apprécié.

EDIT Les commentaires de Michael Kjörling et réponse ont résolu le problème fondamental de l'accès à mes données. Cependant, les questions en caractères gras ci-dessus n’ayant pas encore été résolues, j’ai modifié la question pour mettre l’accent sur cette question, laissant ainsi la question ouverte pour les futurs utilisateurs.

9
kinbiko

Comme nous l'avons découvert dans les commentaires, il existe deux problèmes possibles:

  1. Vous essayez d'exécuter la copie en tant qu'utilisateur régulier. Cela peut entraîner l'échec de la lecture des fichiers source, car vous ne disposez pas des autorisations de lecture correspondantes. Ceci est facilement corrigé en copiant Sudocomme vous l'avez fait pour le montage.
  2. Vous obtenez cp: omitting directory Documents/ lorsque vous essayez d'exécuter la copie via Sudoname__. Ce n'est pas du tout un problème d'autorisations et peut être corrigé en indiquant simplement cppour inclure les sous-répertoires.

En réunissant ces deux éléments, vous devriez pouvoir copier vos fichiers à l’aide d’une commande telle que Sudo cp -av /media/myharddrive /somewhere/else, où/quelque part/else existe et est accessible en écriture.

Le paramètre -v n'est pas strictement nécessaire, mais après une demi-heure ou une heure d'attente, vous pouvez apprécier que les fichiers soient listés au fur et à mesure de leur copie. Notez que si vous avez un très grand nombre de petits fichiers, l'actualisation de l'écran peut réduire le débit de la copie. dans ce cas, minimisez simplement la fenêtre et vérifiez-la de temps en temps.

-a indique à cp de fonctionner en mode "archive", en préservant autant que possible les fichiers qu'il copie, y compris les sous-répertoires. Vous pouvez également utiliser -r pour lui indiquer de ne conserver que la structure de répertoires.

Grâce à cela, vous devriez pouvoir copier les fichiers dans un emplacement plus approprié où vous pourrez les utiliser plus librement, sans être limité par la limitation en lecture seule de la prise en charge du système de fichiers HFS +.

4
a CVn

J'ai toujours eu le même problème et ce que j'ai appris jusqu'à présent: réussir un fsck est essentiel. Comme cela ne fonctionne pas sur votre machine, je pense que cela devrait être votre approche pour un correctif:

  • quelle version de hfsprogs/fsck.hfsplus avez-vous installée?
  • sur ma machine (exécutant Debian) I installé à partir des sources (en utilisant les téléchargements d'une autre source)

    wget "http": // "gentoo.osuosl.org/distfiles/diskdev_cmds-332.14.tar.gz"

    wget "http": // "gentoo.osuosl.org/distfiles/diskdev_cmds-332.14_p1.patch.bz2"

    tar xzf diskdev_cmds-332.14.tar.gz

    bunzip2 -c diskdev_cmds-332.14_p1.patch.bz2 | patch -p0

    cd diskdev_cmds-332.14

    make -f Makefile.lnx

    cp fsck_hfs.tproj/fsck_hfs /sbin/fsck.hfsplus

    cp newfs_hfs.tproj/newfs_hfs /sbin/mkfs.hfsplus

    ln -s /sbin/fsck.hfsplus /sbin/fsck.hfs

    ln -s /sbin/mkfs.hfsplus /sbin/mkfs.hfs

De cette façon, fsck a fonctionné pour moi tout le temps maintenant avec mon disque hfs +.

0
Rudolf

Je pense que votre problème est de savoir comment désactiver la journalisation sans utiliser OSX.

Cela nécessite l’édition binaire (piratage) de l’en-tête du disque, de sorte que l’espace disque occupé par le journal sera probablement perdu.

Voici des indicateurs de deux programmes C assez similaires qui prétendent faire exactement cela:

Je ne peux pas garantir que ces programmes ne détruiront pas le disque, je vous suggère donc de l'essayer sur une image de sauvegarde du disque.

Cet article pourrait être utile: Comment puis-je monter une image disque? .

0
harrymc