web-dev-qa-db-fra.com

Quel est le but de iocharset = utf8?

Je vois que iocharset=utf8 est recommandé presque partout lors du montage de partages Windows SMB dans Linux.

J'ai monté des fichiers vhdx sur une Ubuntu VM et je souhaite être assuré que tous les fichiers que j'écrirai sur le disque à partir d'Ubuntu VM seront lisibles à partir de Windows. J'ai donc deux questions:

  1. Est-ce ce que iocharset=utf8 fait?
  2. Devrais-je appliquer cette option au fstab pour le vhdx dans Ubuntu VM aussi, et pas seulement SMB partages?
3
adampski

iocharset=utf8 définit le codage à utiliser lors du montage de lecteurs ou de partages réseau.

Selon Wikipedia:

UTF-8 is a character encoding capable of encoding all possible characters, or code points, defined by Unicode.

Il s’agit plutôt d’une fonction de sécurité qui permet d’assurer à Ubuntu de présenter tout le texte dans un format lisible (le montre correctement) et de tout enregistrer dans un format lisible par les autres systèmes d’exploitation.

Vous pouvez certainement ajouter cette option à tout ce que vous montez, mais à moins que vous ne rencontriez des problèmes avec les chemins de texte ou de fichier, il n'est pas nécessaire de l'ajouter.

4
TheWanderer

Le codage de caractères par défaut pour les montages sous Linux est iso8859-1. Cet encodage est ancien et ne prend en charge que 256 caractères. Tous les systèmes modernes devraient utiliser utf-8 mais je pense que ISO8859-1 est laissé par défaut pour des raisons de compatibilité. C'est donc toujours une bonne idée d'ajouter iocharset = utf8 lors du montage du partage Windows. En outre, de nombreux sites Web appliquent filemode/dirmod 777 lors du montage, ce qui, à mon avis, est inutile. La commande de montage que j'utilise est,

Sudo mount -t cifs //SERVER/FOLDER /mnt/FOLDER -o username=USER,domain=DOMAIN,iocharset=utf8
1
Shital Shah