2 votes

D'Ubuntu à OS X - impossible de fixer les permissions

J'utilise Ubuntu pour transférer des données d'un disque formaté en XFS vers un disque formaté en HFS+ via USB. Le problème est que, quoi que je fasse, ces fichiers sont protégés en écriture et je ne peux pas modifier leurs permissions.

Je suis conscient que l'UID par défaut d'Ubuntu est 1000 alors qu'il est 501 sur Mac, donc j'ai changé mon UID Ubuntu pour 501. comme décrit dans ce guide .

Maintenant les autorisations semblent correctes, et quand je fais un ls -n On me dit que l'UID est 501, le groupe est 20 et les permissions sont les suivantes rwxrwxrwx Ce qui est exactement la même chose que sur mon autre clé USB qui fonctionne parfaitement.

Mais pour une raison quelconque, je ne peux toujours pas modifier les fichiers. On me dit de m'authentifier et lorsque je le fais, rien ne se passe.

Si je copie les fichiers sur un autre volume dans le Finder, ils ne sont plus protégés en écriture, ce qui me fait penser qu'il pourrait y avoir quelque chose de louche sur le disque USB sur lequel je copie. J'ai dû le formater en HFS+ (non journalisé) pour qu'Ubuntu puisse y écrire.

Cela pourrait-il signifier quelque chose ? Les fichiers copiés sur le volume depuis le Finder sur le Mac ne sont pas verrouillés, mais les fichiers copiés via Ubuntu le sont.


Je viens de faire quelques tests supplémentaires et je me suis rendu compte qu'un sous-dossier de l'un des dossiers que j'avais copié contenait des images sur lesquelles je pouvais écrire sans problème, mais les fichiers vidéo au même niveau que le dossier original étaient tous verrouillés... les fichiers vidéo et les images avaient 501/20 comme propriété/groupe. De plus, quelques fichiers qui étaient verrouillés avaient le badge "verrouillé" sur eux, et j'ai pu enlever la coche dans les propriétés du fichier, mais rien ne s'est passé et quand j'ai vérifié les propriétés à nouveau, il était toujours là. Mais encore une fois, d'autres fichiers vidéo qui étaient verrouillés n'avaient pas le badge en premier lieu... il y a vraiment quelque chose qui cloche ici ??!

J'effectue régulièrement des tests sur un autre Mac exécutant Snow Leopard Server et les problèmes sont les mêmes.


Dernière mise à jour :

J'ai essayé de faire rsync par ssh comme suggéré ci-dessous, j'ai essayé de renommer l'utilisateur dans ubuntu pour que le nom d'utilisateur, le "nom long" et l'UID correspondent à OSX - aucun progrès.

J'ai passé les 14 dernières heures à essayer de résoudre ce problème - fatigué, je vais me coucher maintenant. Le dernier recours est de copier tout le disque ubuntu tel qu'il est maintenant, puis de le copier sur un autre disque USB du mac (lorsque je fais des allers-retours entre les bureaux, les problèmes semblent être résolus). Le seul inconvénient est que je dois aller acheter un autre disque dur pour copier les 1,5 To de la boîte ubuntu et passer encore 2 jours à copier des fichiers :-/


Solution finale :

Comme aucune des suggestions faites ici n'a permis de résoudre le problème, j'ai fini par acheter un autre disque dur de 2 To, copié les fichiers d'ubuntu sur le disque formaté en HFS, connecté les deux disques à mon mac et copié à nouveau les fichiers du disque formaté en HFS sur un disque formaté en HFS (journalisé). Problème résolu. Comme je l'ai constaté, le seul moyen de contourner ce problème était de copier des fichiers dans l'environnement Mac. Une fois qu'un fichier avait été copié une fois, les problèmes de permission étaient résolus.

1voto

boliva Points 2588

Je soupçonne qu'Ubuntu traite les fichiers d'UID < 1000 comme des fichiers système.

Je transférerais les fichiers en tant que root en utilisant rsync via ssh :

rsync -avp -e ssh root@srcmachine:/path/to/src/files destination/dir

Si les noms d'utilisateur et de groupe sont les mêmes, alors les uids seront remappés. Les uids peuvent être transférés inchangés en utilisant le commutateur --numeric-ids.

rsync fonctionne également entre les systèmes de fichiers, et pas seulement sur le réseau.

1voto

bahamat Points 5456

Faites-vous le propriétaire des fichiers.

sudo chown -R ${LOGNAME}:${GROUPS} /path/to/copied/files

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X