web-dev-qa-db-fra.com

Problème d'accès à la partition Mac OS X à partir d'Ubuntu 14.04

J'ai un disque dur 1 TB dans un Macbook Pro 6.2 (partitionné vers la mi-2010) partitionné avec 900 Go pour Mac OS X et 100 Go pour Ubuntu 14.04. J'aimerais pouvoir lire les fichiers de la partition HFS + avec OS X installé pour écouter ma musique, regarder des fichiers vidéo, etc.

J'ai changé l'UID de mon compte Ubuntu en me connectant à un deuxième compte que j'ai créé avec les privilèges Sudo et en exécutant ce qui suit (où nomutilisateur est mon nom d'utilisateur de connexion):

Sudo usermod -u 501 -g 20 username
Sudo chown -R username: /home/username

Lorsque je me suis connecté à nouveau, j'ai toujours le message "Vous ne disposez pas des autorisations nécessaires pour afficher le contenu de" Macintosh HD "." Dans mes efforts de dépannage, j'ai redéfini les identifiants UID et GID de mon compte principal sur 1000 et créé un nouveau compte utilisateur sur lequel j'ai modifié les identifiants UID et GID. Ce compte a maintenant un accès en lecture au volume HFS + - mais lorsque je l’ai supprimé et que j’ai fait exactement la même chose pour mon compte principal, la même erreur s’est produite.

Est-il possible de changer les UID et GID de mon compte principal pour me permettre de lire le volume HFS +?

EDIT: Voici une capture d'écran du problème lorsque j'essaie d'accéder à Documents. La même erreur se produit pour le bureau, les téléchargements, Dropbox, Google Drive, la bibliothèque, les films, la musique et les images, mais pas pour les autres dossiers (visibles). Je n'ai pas essayé d'entrer dans un vin ou quoi que ce soit.

Here's a screenshot of the issue.

EDIT: Selon la suggestion de Thomas W., j'ai lancé Sudo ls -al folder, où folder est le dossier dans lequel Documents est placé. C'est la sortie:

bzodonnell@bzodonnell-MacBookPro:~$ Sudo ls -al /media/bzodonnell/MacOS/Users/bzodonnell
total 232
drwxr-xr-x 1  501 dialout     61 May  4 15:57 .
drwxr-xr-x 1 root      80      5 Oct 20  2014 ..
drwxr-xr-x 1  501 dialout     20 Apr  7 13:11 adarkroom
drwxr-xr-x 1  501 dialout     15 Mar  5 09:27 .Android
drwxr-xr-x 1  501 dialout      7 Mar  9 18:44 AndroidStudioProjects
-rw-r--r-- 1  501 dialout    638 Feb 17  2014 .anyconnect
drwxr-xr-x 1  501 dialout     90 May  5 11:48 Applications
-rw------- 1  501 dialout  18776 May  5 16:56 .bash_history
-rw-r--r-- 1  501 dialout    334 Oct 29  2014 .bash_profile
-rw-r--r-- 1  501 dialout    167 Jul 10  2014 .bash_profile.pysave
drwxr-xr-x 1  501 dialout      7 Apr 30 13:11 .cache
drwxr-xr-x 1  501 dialout    156 May  2 13:13 Calibre Library
-r-------- 1  501 dialout      7 Apr  4 11:10 .CFUserTextEncoding
drwxr-xr-x 1  501 dialout      4 Mar  6  2014    .com.stirfirestudios.freedomfall.macos
drwxr-xr-x 1  501 dialout      7 Apr 19 14:17 .config
drwx------ 1  501 dialout      3 Sep  8  2010 .cups
drwxr-x--- 1  501 dialout      6 Apr 15 15:12 .denemo-1.2.2
drwx------ 1  501 dialout     14 May  6 17:04 Desktop
drwx------ 1  501 dialout     19 May  5 11:09 Documents
drwx------ 1  501 dialout    207 May  5 15:13 Downloads
drwx------ 1  501 dialout     12 May  7 08:16 .dropbox
drwx------ 1  501 dialout     73 May  7 09:23 Dropbox
-rw-r--r-- 1  501 dialout  22532 May  5 15:17 .DS_Store
drwx------ 1  501 dialout      3 Apr 14 18:01 .emacs.d
drwxr-xr-x 1  501 dialout     45 Apr 15 14:46 .fontconfig
drwxr-xr-x 1  501 dialout     10 Apr 27 19:25 .git
-rw-r--r-- 1  501 dialout    151 Apr  7 13:24 .gitconfig
drwx------ 1  501 dialout      2 Apr 15 14:44 .gnome2
drwx------ 1  501 dialout     43 Jun 18  2014 Google Drive
drwxr-xr-x 1  501 dialout      4 Feb 26 10:59 .gradle
drwxr-xr-x 1  501 dialout      4 Oct 29  2014 .idlerc
drwxr-xr-x 1  501 dialout      8 Apr 15 14:44 .inkscape-etc
-rw------- 1  501 dialout     35 May  3 17:02 .lesshst
drwx------ 1  501 dialout     71 Apr  4 11:10 Library
drwxr-xr-x 1  501 dialout      9 Apr 15 15:12 .lilypond-fonts.cache-2
drwxr-xr-x 1  501 dialout      3 Feb  9 11:18 .local
drwx------ 1  501 dialout      8 May  2  2011 Movies
drwx------ 1  501 dialout      9 Feb 20 10:33 Music
drwxrwxrwx 1  501 dialout      3 Jul  2  2014 .nchsoftware
drwxr-xr-x 1  501 dialout      9 Apr 30 14:09 PCSX2
drwxr-xr-x 1  501 dialout     11 Apr  6 10:18 .pia_manager
-rw-r--r-- 1  501 dialout 130030 May  7 09:54 .pia_manager_crash.log
drwx------ 1  501 dialout     11 Apr 16 07:10 Pictures
drwxr-xr-x 1  501 dialout      6 Jul 10  2013 Public
drwxr-xr-x 1  501 dialout      6 Apr 15 23:39 .qgis2
drwxr-xr-x 1  501 dialout      3 Feb 20  2014 .R
-rw-r--r-- 1  501 dialout    225 Dec  3  2013 .Rapp.history
-rw-r--r-- 1  501 dialout  16419 Feb  9 14:02 .Rhistory
-rw------- 1  501 dialout   1024 May  3 17:25 .rnd
drwxr-xr-x 1  501 dialout     16 Feb 19 17:24 .rstudio-desktop
drwxr-xr-x 1  501 dialout      6 Jul  3  2014 Sites
drwxr-xr-x 1  501 dialout      8 Apr 15 13:45 stencylworks
-rw-r--r-- 1  501 dialout    123 Apr 15 13:52 StencylWorks.prefs
drwxr-xr-x 1  501 dialout      6 Jun  1  2012 .Subversion
drwxr-xr-x 1  501 dialout      4 Apr 14 22:31 .thumbnails
drwx------ 1  501 dialout     25 May  6 16:59 .Trash
-rw------- 1  501 dialout    849 Apr 14 18:00 .viminfo
drwxr-xr-x 1  501 dialout      8 May  4 15:59 .wine
drwxr-xr-x 1  501 dialout     10 May  3 19:51 .wine-brothers
drwxr-xr-x 1  501 dialout      9 May  1 09:25 .wine-Steam
-rw------- 1  501 dialout      0 Apr 20 18:17 .Xauthority

EDIT: Voici ce que je tape pour être sûr que le répertoire est monté correctement. J'ai tapé ceci avant que j'ai couru le code ci-dessus.

bzodonnell@bzodonnell-MacBookPro:~$ Sudo umount /dev/sda2
bzodonnell@bzodonnell-MacBookPro:~$ id
uid=1000(bzodonnell) gid=1000(bzodonnell) groups=1000(bzodonnell),4(adm),24(cdrom),27(Sudo),30(dip),46(plugdev),108(lpadmin),124(sambashare)
bzodonnell@bzodonnell-MacBookPro:~$ Sudo mount -t hfsplus -o uid=1000,gid=1000 /dev/sda2 /media/bzodonnell/MacOS
mount: warning: /media/bzodonnell/MacOS seems to be mounted read-only.
2
bzodonnell

Si vous êtes allé changer vos uid et gid, remettez-les maintenant avant même d'avoir dépassé cette première partie de cette réponse.

Sauf si vous vraiment ​​savez ce que vous faites, vous ne devez JAMAIS changer votre uid ou gid simplement pour monter un lecteur, car vous pouvez annuler d'autres autorisations sur l'ordinateur et perdre potentiellement l'accès à votre propre répertoire de base dans la partition Linux.


Habituellement, lorsque vous montez un lecteur, vous transmettez des arguments pour fournir les options uid et gid au montage afin de spécifier la propriété de l'utilisateur/du groupe, ainsi que d'autres arguments importants relatifs au masque d'autorisation, ainsi que d'autres arguments (this Cela est généralement fait avec les partitions vfat ou ntfs, mais cela s’applique à la plupart des types de partitions, en particulier celles qui ne respectent pas les systèmes d’autorisations Linux). Bien que cela soit généralement fait dans le fichier /etc/fstab pour les options persistantes pour des partitions ou des supports spécifiques, vous pouvez manuellement fournir des options pour une commande mount donnée, si vous le souhaitez.

Monter avec la commande suivante devrait faire ce que vous avez besoin de faire sans modifier l'UID ou le GID de votre propre utilisateur. Cela crée un dossier MacOS dans /media/username/, où nous monterons la partition de lecteur sur:

Sudo mkdir -R /media/username/MacOS
Sudo chown --recursive username:username /media/username
Sudo mount -t hfsplus -o uid=USERUID,gid=USERGID /dev/sdx /media/username/MacOS

Remplacez /dev/sdx par l'identifiant de partition actuel et toutes les instances de 'nom d'utilisateur' par le nom de l'utilisateur. De même, remplacez USERID et USERGID par les valeurs réelles.

Pour le rendre constamment montable par l'utilisateur, vous devez ajouter une entrée fstab permettant aux utilisateurs de monter et démonter le lecteur, tout en fournissant les paramètres uid et gid en conséquence.

(Remarque: les arguments uid et gid ont été obtenus à partir de documentation kernel.org . Vous devez disposer des bibliothèques prérequises pour lire les partitions hfsplus pour que cela fonctionne. )

2
Thomas Ward