cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu

Il peut arriver qu’avec un partage SAMBA un fichier ou dossier se retrouve avec un nom illisible au « bon » vieux format DOS 8.3 (8 caractères, un point et 3 caractères − le tout en majuscule uniquement).

Si aucun vieux système n’a à utiliser vos partages (ce qui est très probablement le cas), vous pouvez probablement vous passer de prendre le risque d’un « ravage » de vos noms de fichiers.



La configuration SAMBA

Samba vous permet de lui donner des instructions plus précises sur la façon dont il doit effectuer la manipulation des noms, y compris celles contrôlant la sensibilité à la casse, le caractère inséré pour former un nom modifié et la possibilité d’associer manuellement les noms de fichiers d’un format à un autre.

Ici pour le sujet qui nous intéresse, il faut modifier le fichier smb.conf, et voici les options de mutilation (si, si, c’est le vrai nom) qui sont proposées par SAMBA.

Option Paramètres fonction Défaut Portée
case sensitive booléen Si yes, Samba traitera les noms de fichiers comme sensibles à la casse (Windows ne le fait pas). no Partage
default case upper ou lower Casse à prendre par défaut (utilisée uniquement lorsque la casse préservée est no). lower Partage
preserve case booléen Si yes, conserve la casse fournie par le client (c’est-à-dire, ne convertis pas en case par défaut). yes Partage
short preserve case booléen Si yes, préserve la casse des noms au « format 8.3 » fournis par le client. yes Partage
mangle case booléen Mutilez le nom s’il est en casse mixte no Partage
mangled names booléen Mutilez les noms longs au format 8.3 DOS. yes Partage
mangling char chaîne (caractère unique) Donne un caractère mutilant. ~ Partage
mangled stack numérique Nombre de noms mutilés à conserver sur la pile de mutilation locale. 50 Global
mangled map string (liste de motifs) Permet le mappage des noms de fichiers d'un format à un autre. Aucun Partage

Concernant le problème proposé, la solution est très simple. Dans le fichier /etc/samba/smb.conf aller dans la section [global] et ajouter (ou modifier) la ligne :

mangled names = no


Cas d’un NAS QNAP

Le même problème existe avec les NAS qui, généralement, supportent en priorité les systèmes Windows.

Concernant la marque QNAP, l’aide présente la solution suivante, à effectuer en ssh directement depuis le NAS :

/bin/sed -i '/^oplocks/d' /etc/config/smb.conf
/bin/sed -i '/^mangled names/d' /etc/config/smb.conf
/sbin/setcfg global "oplocks" yes -f /etc/config/smb.conf
/sbin/setcfg global "mangled names" no -f /etc/config/smb.conf
/etc/init.d/smb.sh restart


Liens

ᦿ


ℹ 2006 - 2023 | 🏠 Accueil du domaine | 🏡 Accueil du blog