Forum général.général UTF-8 SMB GNOME ...

Posté par  .
Étiquettes :
0
23
oct.
2006
Bonjour

Bon j'ai vraiment besoin d'éclaircissement concernant l'encodage et l'UTF-8 !
Lors de ma migration complète et définitive vers debian etch, il y a 5 mois, je me suis retrouvé avec des "?" sur mes fichiers accentués venant de windows.
Sous debian etch l'UTF-8 est par défaut alors j'ai laissé mais j'ai coché aussi les ISO-8859-1 et ISO-8859-15.

Maintenant j'ai voulu m'attaquer au problème quand j'ai constaté que tous mes beaux fichiers musicaux bien rangés et bien classés étaient aussi avec des "?".

1/ Questions générales :
J'ai du mal à saisir comment fonctionne réellement l'encodage des caractères et surtout ou doivent se faire les réglages ?
Dans "locale" c'est en utf-8
Dans Gnome, comment on règle ça ? Dans les préférences de Nautilus j'ai rien trouvé. a quoi correspond la variable G_FILNAME_ENCODING dont j'ai entendu parler sur divers forums ?
Dois-je utiliser les fonctions "iconv" ou "recode" ?

2/ Problèmes avec samba :
Quand je synchronise mes fichiers musicaux avec le poste de mon amie sous windows via samba, mon poste sous linux récupère des fichiers avec des "?" et elle c'est pareil !
J'utilise un petit utilitaire simple (Fullsync).
Voici le fstab du montage des fichiers distants

//carole/Ma\040Musique /mnt/carole/musiquecarole smbfs username=carole,password=,user,uid=100,rw 0 0


Merci
  • # Re : UTF-8 SMB GNOME ...

    Posté par  (site web personnel) . Évalué à 1.

    J'ai du mal à saisir comment fonctionne réellement l'encodage des caractères et surtout ou doivent se faire les réglages ?

    Dans "locale" c'est en utf-8

    A priori ca suffit, gnome doit fonctionner en UTF-8 tout seul. Pour vérifier, je ne connais pas de méthode propres, mais si tu ouvre un gnome-terminal, tu peut aller dans le menu terminal->codage_caractères->locale_en_cour(UTF8).
    Au pire, tu peut le forcer dans les réglages de GDM, a la connexion.

    Pour tes noms de fichiers, si tes fichiers on été créés en iso-8859 et que tu as passé tes partitions en UTF-8, il faut convertir tes noms de fichier, je connais convmv qui fait bien cela : http://j3e.de/linux/convmv cherche un peu, il doit exister un paquet debian : c'est un prog bien connu.

    Pour samba, il faut configurer dans la section [global] de ton /etc/samba/smb.conf :
    display charset = UTF-8
    dos charset = 850
    unix charset = UTF-8


    Malgré tout, je ne suis pas spécialiste de samba, et il m'arrive (je ne sais pas pourquoi) de tomber sur des partages qui sont mal affichés.

    Si tu as des partitions FAT que tu partage avec windows (clé usb, partoche de données ...) je te conseille de conserver le codage de windows et de le déclarer dans ton fstab. Recherche iocharset dans un man mount.

    Adhérer à l'April, ça vous tente ?

  • # utf8-migration-tool

    Posté par  . Évalué à 1.

    Ce paquet permet de modifier ta locale et de renommer tes fichiers en format UTF8.
    Pour les fichiers provenant de windows, je monte les partitions ntfs avec l'option « nls=utf8 » et les partitions vfat avec l'option « utf8 » et je n'ai aucun problème d'encodage caractère.
  • # utf8 samba fstab

    Posté par  . Évalué à 1.

    Merci pour vos réponses et désolé de ne pas donner de nouvelles plus tôt.
    J'ai tout de même réussis à remettre de l'ordre dans mes fichiers grâce à convmv :
    convmv -f latin1 -t utf-8 -r --notest Monrepertoire

    Malheureusement j'avais déjà modifié sur Nautilus quelques fichiers. Ce qui entraine un "double" encodage utf8 pour ces fichiers qui peut être rectifier comme préciser par la doc par un réencodage dans l'autre sens :
    convmv -f utf-8 -t latin1 --notest lefichier


    Par contre pour samba j'ai rien réglé. Mais en fait, le problème ne vient pas de samba puisque quand je navigue avec nautilus et je copie des fichiers (dans n'importe quel sens) pas de soucis d'encodage. Cela doit venir du fait que mes variables de smb.conf sont réglées correctement.
    Le problème vient bien du montage fstab. J'ai essayé plusieurs sortes de montage et rien à faire, par exemple :
    //carole/Ma\040Musique /mnt/carole/musiquecarole smbfs iocharset=utf8,codepage=cp850,username=carole,password=,user,uid=100,rw 0 0


    J'ai essayé aussi avec nls=utf8 mais les caractères accentués ne sortent toujours pas correctement !
    D'autres idées ?
  • # codage UTF-8

    Posté par  . Évalué à 2.

    Pour des infos sur le codage UTF-8 (pas encodage, merci), cf par exemple cette page : http://fr.wikipedia.org/wiki/UTF-8 .
    Ça permet de comprendre les caractères bizarre qu'on obtient en cas d'incompatibilité de codage (UTF-8 par rapport à ISO-8859-1[5] généralement).
  • # J'ai la solution

    Posté par  . Évalué à 1.

    Bon après plus d'une semaine de vacances je ne sais pas si quelqu'un va encore lire ce message mais tant pis. Je donne la solution que j'ai trouvée :

    Il faut tout simplement enlever l'option user dans le fstab et la remplacer par users. Ce qui donne :

    //carole/Ma\040Musique /mnt/carole/musiquecarole smbfs codepage=cp850,iocharset=utf8,username=carole,password=,rw,users 0 0


    Mais je ne vois pas quel est le rapport avec les accents mais ca marche !
    • [^] # Re: J'ai la solution

      Posté par  . Évalué à 1.

      oups en fait même avec "users" il y a des problèmes d'accents. Le plus simple est de ne rien mettre !
      • [^] # Re: J'ai la solution

        Posté par  . Évalué à 1.

        Quelqu'un a-t-il une explication sur ce problème ?

        Je respécifie le sujet :
        les commandes suivantes donnent des résultats différents : OK = les accents fonctionnent, KO = les accents sont remplacés par des "?"

        $ sudo smbmount //server/partage /folder -o uid=1000,gid=1000,codepage=cp850,iocharset=utf8 -> OK
        $ sudo smbmount //server/partage /folder -o uid=1000,gid=1000,codepage=cp850,iocharset=utf8,user -> KO
        $ sudo smbmount //server/partage /folder -o uid=1000,gid=1000,codepage=cp850,iocharset=utf8,users -> KO
        $ sudo smbmount //server/partage /folder -o uid=1000,gid=1000,codepage=cp850,iocharset=utf8,noauto -> KO

        Il semble donc que le seul moyen d'avoir des accents corrects est d'avoir un montage automatique par root du partage, et que permettre à un utilisateur de monter lui-même les partages ne permet pas d'avoir les accents.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.