Nom de fichier via samba

Bonjour,

En participant à un autre sujet, j’ai eu l’occasion de me rendre compte que l’un de mes serveurs était plus rapide en CIFS qu’en NFS. J’ai essayé d’optimiser NFS, mais rien n’y fait, CIFS reste plus rapide ; sans doute à cause d’options sur le serveur. Bref, j’essaye de voir si le CIFS peut remplacer NFS sans trop de casse, mais je rencontre un soucis.

Le nom de certains dossier/fichier semblent poser problème. Pour illustrer la chose, j’ai fait une maquette:

  1. archives: serveur NAS sous FreeNAS
  2. mufasa: mon poste d’admin
root@archives[/mnt/archives/test]# mkdir "Test:Dossier"
root@archives[/mnt/archives/test]# ls -lah
total 34
drwxr-xr-x  4 root  wheel     4B Mar 31 18:55 .
drwxrwxr-x+ 5 root  wheel     5B Mar 31 18:49 ..
drwxr-xr-x  2 root  wheel     2B Mar 31 18:53 Test:Dossier
drwxrwxrwx  2 root  wheel     2B Mar 31 18:55 Test2?Dossier
root@mufasa:/mnt/archives/test# ls
total 0
drwxrwx--- 2 root root 0 mars  31 18:53 .
drwxrwx--- 2 root root 0 mars  31 18:49 ..
drwxrwx--- 2 root root 0 mars  31 18:53 T8H9HN~0
root@mufasa:/mnt/archives/test# mkdir "Test2:Dossier"
root@mufasa:/mnt/archives/test# ls
total 0
drwxrwx--- 2 root root 0 mars  31 18:55 .
drwxrwx--- 2 root root 0 mars  31 18:49 ..
drwxrwx--- 2 root root 0 mars  31 18:53 T8H9HN~0
drwxrwx--- 2 root root 0 mars  31 18:55 Test2:Dossier

J’ai lu que ça pouvait venir de la configuration de samba, mais je pense pourtant avoir fait ce qu’il fallait:

root@archives[/mnt/archives/test]# cat /usr/local/etc/smb4.conf | grep "char"     
    dos charset = UTF-8
    unix charset = UTF-8

Au niveau du point de montage, je pense également avoir fait le nécessaire:

//172.16.5.2/archives			/mnt/archives		cifs		_netdev,guest,iocharset=utf8,uid=root,gid=root,dir_mode=0770,file_mode=0660

Je n’ai plus d’idée, donc n’hésitez pas à me faire tester des choses :wink:


Je viens de tester l’option mangled names = no sur le serveur, le dossier apparaît correctement, mais impossible de l’ouvrir. Mauvaise idée donc.

Ton test, je n’y comprend rien.

C’est quoi “Test2?Dossier” ? D’où il sort ?

C’est quoi “T8H9HN~0” ?

Sinon, tout ce que tu fais me parait normal, je ne vois pas le problème, en fait.

J’ai croisé les deux, pardon. En gros, même si personne ne l’est:

  • Test:Dossier: créé sur le serveur
  • Test2:Dossier: créé sur le client
  • T8H9HN~0: nom du dossier Test:Dossier vu du client
  • Test2?Dossier: nom du dossier Test2:Dossier vu du serveur

Les caractères : et ? sont interdits dans les noms de fichiers en CIFS.
Peut-être qu’avec les extension Unix, tu n’auras pas ce problème, mais je n’en ai aucune idée…

Mouarf :sweat:
En même temps ça aurait du sens, Windows ne permet pas ces caractères dans les noms de fichiers… Je suis surpris par contre de ne rien avoir qui m’interdis d’en écrire sur du CIFS monté sur le client.

Merci à vous deux en tout cas!