10 votes

Problèmes avec les fichiers et dossiers dont les noms contiennent des trémas.

Je viens de constater des problèmes lors de la navigation dans ma collection de musique externe à l'aide du Finder, certains dossiers d'artistes étaient manquants.

En allant sur iTerm et ls dans le dossier, j'ai obtenu ceci comme rapport initial :

ls Music
ls: Maná: No such file or directory
ls: Márta Sebestyén: No such file or directory
ls: Motörhead: No such file or directory
ls: Zoë Keating: No such file or directory

Notez que les noms des artistes utilisent des trémas et des accents aigus doubles.

Il s'agit d'un dossier sur un boîtier NAS (ReadyNAS 204) via smb, j'ai également une sauvegarde du NAS fonctionnant sous Ubuntu accessible via CIFS.

En utilisant le Finder sous OS X El Capitan, ni le NAS ni la sauvegarde ne montrent ces dossiers. Cependant, avec Yosemite, je peux voir le dossier Artists mais les albums sont absents.

En se connectant directement aux boîtes, tous les fichiers semblent être intacts et SONOS peut toujours les lire !

Est-ce que quelque chose a changé dans OS X ? J'ai utilisé Max pour extraire ces fichiers des CD (Snow Leopard) et je devais donc être capable de gérer les fichiers à un moment donné.

NB : est un interrobang

Mise à jour avec un peu plus d'informations

En utilisant rsync depuis le Mac pour copier de la musique sur un disque USB (format OS X Extended), je vois des choses comme :

rsync -av --iconv=utf8-mac,utf8 /Volumes/share/Music/ /Volumes/usbdisk/Music/

file has vanished: "/Volumes/share/Music/.../Márta Sebestyén"
file has vanished: "/Volumes/share/Music/.../Maná"
file has vanished: "/Volumes/share/Music/.../Zoë Keating"
file has vanished: "/Volumes/share/Music/.../Rammstein-2005-Rosenrot-07-Zerstören.flac"

se connecter au serveur Ubuntu et en utilisant convmv comme décrit ici :

cd /mnt/Music
convmv -r -f ISO-8859-1 -t UTF-8 . 

Il retourne :

Starting a dry run without changes...
Skipping, already UTF-8: ./Márta Sebestyén
Skipping, already UTF-8: ./Maná
Skipping, already UTF-8: ./Michael Bublé
Skipping, already UTF-8: ./Zoë Keating
Skipping, already UTF-8: ./Rammstein/1999-Live aus Berlin/Rammstein-1999-Live aus Berlin-10-Bück dich.flac
Skipping, already UTF-8: ./Rammstein/1999-Live aus Berlin/Rammstein-1999-Live aus Berlin-03-Weißes Fleisch.flac
No changes to your files done. Use --notest to finally rename the files.

Il semble que les principaux fichiers ayant des problèmes soient déjà en utf-8 mais notez que le fichier "Rammstein-2005-Rosenrot-07-Zerstören.flac" avec lequel rsync a eu des problèmes n'est pas listé dans le rapport ci-dessus.

J'ai également utilisé brew pour installer la dernière version de rsync 3+ plutôt que la version 2.6 qui est utilisée par défaut.

brew tap homebrew/dupes
brew install rsync

Et ensuite éditez /private/etc/paths pour mettre /usr/local/bin avant /usr/bin

Essai de l'AFP

L'activation de l'AFP sur le NAS Ready (OS 6.4.2) a été un peu bizarre pour moi. La structure est Artist/Album/Tracks.flac . Les artistes sont là, l'album était là, développez l'album pour voir les pistes, le dossier Artistes a disparu.

Artist

Album

Artists vanished when trying to view tracks

ReadyNAS smb.conf

[global]
 dos charset = CP1252
 unix charset = UTF-8

Informations connexes

Les dossiers ne s'affichent pas dans le Finder ?
Problèmes CIFS & MAC avec les caractères spéciaux dans les noms de dossiers .

6voto

srikanta Points 1418

MacOS et Linux utilisent des styles UTF-8 différents. convmv peut convertir entre ces deux styles avec les options --nfc / --nfd. Sur votre NAS basé sur Linux, faites ceci :

convmv -r -f UTF-8 -t UTF-8 --nfc  .

Extrait de la page de manuel convmv :

HFS+ sur OS X / Darwin Linux et (la plupart ?) des autres systèmes d'exploitation de type Unix utilisent par défaut la forme de normalisation C (NFC) pour leur encodage UTF-8, mais ne l'appliquent pas. HFS+ sur le Macintosh OS applique la forme de normalisation D (NFD), où quelques caractères sont encodés d'une manière différente. Sous OS X, il n'est pas possible de créer des noms de fichiers NFC UTF-8 car cela est empêché au niveau du système de fichiers. Sur HFS+, les noms de fichiers sont stockés en interne en UTF-16 et lorsqu'ils sont reconvertis en UTF-8 (parce que le système d'exploitation basé sur Unix ne peut pas traiter UTF-16 directement), le NFD est créé pour une raison quelconque. Voir http://developer.apple.com/qa/qa2001/qa1173.html pour les défaults. Je pense que c'était une très mauvaise idée et que cela casse beaucoup de choses sous OS X qui attend un système normal conforme à POSIX. Partout ailleurs, convmv est capable de convertir des fichiers de NFC en NFD ou vice versa, ce qui rend l'interopérabilité avec de tels systèmes beaucoup plus facile.

Btw : Cela ne se produit que lorsque vous transférez vos fichiers depuis une partition HFS+. APFS n'applique plus le NFD.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X