J'ai un dossier partagé configuré sur une machine Ubuntu. Lorsque quelqu'un se connecte au dossier et crée un fichier, les autorisations de fichier définissent le groupe en lecture/écriture. Je peux vérifier l'autorisation sur Ubuntu ou Windows et ils indiquent tous les deux que le groupe dispose d'une autorisation de lecture/écriture.
Le problème survient lorsqu'un utilisateur tente de modifier un fichier créé par un autre utilisateur. Par exemple, utilisateur1 crée un document texte. Si l'utilisateur 2 se connecte au dossier partagé, il peut ouvrir le document texte. Cependant, lorsqu'il tente de sauvegarder le fichier, il y a une erreur indiquant qu'il n'a pas la permission. Chaque utilisateur fait également partie du même groupe.
Mon ajout au fichier samba.conf ressemble à ceci:
[foldername]
page = /home/path/to/directory
writeable = yes
browseable = yes
read only = no
valid users = user1, user2, user3, user4
Une autre solution possible consiste à définir le bit "setgid" sur votre répertoire partagé. Cela signifie que tous les fichiers/répertoires créés dans le répertoire partagé appartiendront automatiquement au groupe. Comme ça:
chmod g+s <directory name>
Vous devrez peut-être aussi le faire sur les sous-répertoires existants. À l'avenir, lorsque de nouveaux répertoires seront créés, le bit setgid sera automatiquement activé pour eux.
Je viens de le tester selon ce simple tutoriel ("quick 'n dirty") et je pense que cela ne peut pas manquer, cela fonctionne parfaitement pour tous les utilisateurs (j'ai essayé). La clé est
create mask = 0777
directory mask = 0777
... qui se chargera des autorisations comme vous le souhaitez.