J'ai un serveur ubuntu partageant des dossiers en utilisant samba. Lorsqu'un client crée un nouveau dossier ou fichier, les autorisations ne sont pas définies en fonction des paramètres de smb.conf.
Mes paramètres actuels pour un partage spécifique :
[share]
path = /mnt/share
browsable = yes
guest ok = no
writable = yes
read only = no
create mask = 0774
directory mask = 0774
write list = netuser
Lorsqu'un client samba (une boîte Windows 7) utilise le compte "netuser" pour créer un fichier ou un répertoire, les autorisations deviennent
drwxr-sr-- 2 netuser sambashare 4096 2012-01-22 21:14 New folder
-rwxrw-r-- 1 netuser sambashare 0 2012-01-22 21:07 New Text Document.txt
Le répertoire parent a le drapeau set group id, donc le propriétaire du groupe sambashare. L'idée est que les utilisateurs de samba et les utilisateurs du serveur appartiennent au groupe sambashare et doivent donc pouvoir modifier, supprimer et créer des fichiers et des répertoires. Cependant, étant donné que les dossiers créés n'ont pas l'indicateur d'écriture pour l'ensemble de groupes, les utilisateurs du serveur ne peuvent pas créer de nouveaux fichiers ou dossiers dans ces dossiers sans sudo.
J'ai testé l'ajout et la suppression du masque de répertoire, du mode de répertoire forcé, du mode de sécurité du répertoire et du mode de sécurité du répertoire forcé, mais les comportements persistent. Les fichiers et dossiers nouvellement créés ne reçoivent pas l'autorisation 774 prévue, mais plutôt 764 et 754 respectivement.
Qu'est-ce que je rate? Pourquoi samba ne définit-il pas les bonnes autorisations ?
Meilleure réponse
Je pense que vous devez utiliser les paramètres suivants :
# I changes the permissions to rw-rw-r--
# You should be able to change them to 775 if you need the files to
# be executable
create mask = 664
force create mode = 664
security mask = 664
force security mode = 664
# I set the SGID flag here as I thought this is what you wanted
# You could change to 0775
directory mask = 2775
force directory mode = 2775
directory security mask = 2775
force directory security mode = 2775
Je cherchais une bonne explication du fonctionnement de ces paramètres, mais je n'ai rien trouvé de mieux que man smb.conf
Vous devrez faire défiler un peu vers le bas pour ces options.
Fondamentalement, en un mot, les autorisations Windows ne sont pas les mêmes que celles d'Unix (Linux) et il est un peu étrange de voir comment Samba mappe les autorisations.