web-dev-qa-db-fra.com

Mappage des noms de fichiers Samba CATIA

J'exécute Ubuntu Server 12.04.2 LTS en tant que serveur de messagerie connecté à ActiveDirectory utilisant dovecot et postfix. Tout fonctionne bien sur cette partie.

Maintenant, nous voulons exporter le stockage du courrier à des fins de sauvegarde. J'ai installé samba et l'ai joint au domaine. Voici à quoi ressemble ma part de samba:

 [global] 
 noms mutilés = Non 
 
 [MailStore] 
 commentaire = Stockage du courrier 
 chemin =/srv/vmail 
 utilisateurs valides = administrateur 
 forcer l'utilisateur = vmail 
 forcer le groupe = vmail 

Je peux maintenant accéder au stockage de courrier avec le compte Administrateur (qui est celui utilisé par l'application de sauvegarde).

Lorsque vous parcourez le stockage du courrier, je vois des noms de fichiers contenant ":" qui n'est pas valide pour Windows. Dovecot l'utilise pour ajouter une sorte d'informations sur l'état aux noms de fichiers dans les répertoires de messagerie. Je veux que ça reste ainsi. Mais Windows ne peut pas lire ces fichiers.

Donc, après quelques recherches sur Google, j'ai trouvé la solution suivante censée y remédier:

 [MailStore] 
 Objets vfs = catia 
 Catia: mappings = 0x22: 0xa8,0x2a: 0xa4,0x2f: 0xf8,0x3a: 0xf7,0x3c: 0xab, 0x3e: 0xbb, 0x3f: 0xbf, 0x5c: 0xff, 0x7c: 0xa6,0x20: 0xb1 

Mais bien que le ":" (0x3a) soit mappé, il n'a aucun effet sur les noms de fichiers lorsque vous parcourez le partage avec l'Explorateur Windows. Les noms de fichiers ne sont pas modifiés.

J'ai essayé mangled names = Yes mais cela ne fait qu'encombrer les noms de fichiers jusqu'à inutilisabilité. Il convertit tous les noms de fichiers avec des caractères illégaux au format 8.3 - nous ne pouvons pas l'utiliser pour la récupération. Et je ne pense pas que cela aurait un effet sur les paramètres VFS de toute façon.

Alors pourquoi Samba n'utilise pas le module VFS? Je ne vois aucune erreur à ce sujet dans les journaux. Et "Locate" révèle la bibliothèque respective vfs_catia.so installée. La version samba est censée prendre en charge cette configuration selon les documents:

 # smbd -V 
 Version 3.6.3 
3
hurikhan77

J'ai eu le même problème avec 12.04 et pigeonnier, je suis allé sur Google et j'ai une solution.

Trouvé un patch dans ce post :

Téléchargé le correctif (en tant que attachment.bin) puis suivi ces (anciennes) instructions: http://www.cmiss.org/cmgui/wiki/BuildingUbuntuPackagesFromSource sur la construction d'un paquet Ubuntu à partir de la source. Vous voulez le paquet 'samba' .....

(créez un dossier quelque part avec de l'espace pour télécharger 23 Mo ....)

apt-get source samba
apt-get build-dep samba

Vous souhaitez maintenant appliquer le correctif téléchargé au fichier: source3/modules/vfs_catia.c dans le dossier samba-3.6.3. Je ne pouvais pas savoir comment appliquer le diff à l'aide de 'patch', alors appliquez-le manuellement - c'est seulement 3 lignes. Reconstruisez le paquet samba, dans le dossier samba-3.6.3 /:

dpkg-buildpackage -rfakeroot -b

Ma version a fonctionné, mais elle a créé:

samba-3.6.3/source3/bin/catia.so

qui, une fois copié dans

/usr/lib/samba/vfs/catia.so

et le redémarrage de Samba donne un mappage de caractères VFS Catia approprié :-)

Merci à Günter Kukkukk pour le patch !!!

3
JerryL