J'ai monté un partage samba à l'aide de la commande smbmount:
$ sudo smbmount \\\\foo\\bar /mnt/bar -o user=tom
Lorsque je crée de nouveaux fichiers, ils sont créés avec le bit exécutable défini pour le propriétaire, le groupe et le monde. Par exemple
$ touch hello.txt
$ ls -la hello.txt
-rwxr-xr-x 1 root root 0 Dec 2 12:28 hello.txt
Le même fichier lorsqu'il est créé sur un partage monté NFS définit les autorisations correctes sans aucun ensemble de bits exécutables.
Pourquoi cela arrive-t-il? Comment peut-il être corrigé?
la source
Cela ressemble à votre problème, intitulé: Les fichiers copiés gagnent un bit d'exécution sur Samba / CIFS .
extrait
Plus bas de la page, la mise
map archive = no
en/etc/samba/smb.conf
:extrait
la source
Vous pourriez essayer:
mount -t cifs
Google "monter des cifs" pour l'utilisation, ce n'est pas difficile à comprendre, mais vous voudrez définir des options en utilisant le drapeau -o:
L'utilisateur et le groupe sont des identifiants, comme en numérique et non l'alias de texte. Ces options garantiront que vous disposez d'un accès r / w, les autorisations sont contrôlées par le montage sans serveur, et
file_mask=0664
garantiront spécifiquement que vos fichiers ne sont pas exécutables. En plus de cela, vous pourrez travailler avec vos partages samba en tant que répertoires locaux.la source
file_mode=0644,dir_mode=0755
Vous pouvez découvrir pourquoi cela se produit à partir de l'explication suivante sur le site Web de Samba sous la section Autorisations et attributs de fichiers sur MS-DOS et Unix :
https://www.samba.org/samba/docs/using_samba/ch08.html
Cela a à voir avec le mappage des bits système, caché et archive pour un système de fichiers MS-DOS.
Un système de fichiers MS-DOS n'utilise pas de bits exécutables, donc les trois bits exécutables du système de fichiers Unix sont réutilisés pour représenter les bits système, masqué et archive du système de fichiers MS-DOS.
Ainsi, lorsque vous affichez les autorisations de fichier à l'aide
ls -l
d'Unix, vous affichez les autorisations de fichier adaptées à MS-DOS (ou Windows) en gardant à l'esprit que les trois bits exécutables sous Unix représentent les bits système, masqué et d'archivage pour MS-DOS.Dans
smb.conf
, cependant, vous pouvez désactiver ce mappage pour un partage avec:et forcer le mode sur la création de fichiers avec:
la source
J'utilise un QNAP TS439 - et j'ai eu ce problème avec les fichiers exécutables.
Bien que je devais utiliser ce qui suit dans mon
/etc/fstab
dossierla source