Comment puis-je accorder une autorisation d'écriture à 1 groupe?
J'ai 2 utilisateurs (alex
et ben
).alex
est membre du groupe alex
et du groupe consult
.ben
est membre du groupe ben
et du groupe consult
.
Je souhaite accorder un accès en lecture-écriture à la fois alex
et ben
sur le dossier consult_documents
.
Si je fais alex
le propriétaire du répertoire consult_documents
et j'accorde 775
accès au répertoire consult_documents
, ben
et alex
pourront accéder au dossier, je pense.
Mais cela permettra-t-il également à ben
d'accéder aux autres dossiers de alex
? Si un utilisateur est dans deux groupes, cela signifie-t-il que tous les membres des deux groupes obtiennent les mêmes autorisations sur tous les dossiers?
L'octroi d'autorisations 775 sur un répertoire ne signifie pas automatiquement que tous les utilisateurs d'un certain groupe y auront rwx
accès. Ils doivent être soit le propriétaire de l'annuaire soit appartenir au groupe de l'annuaire:
$ ls -ld some_dir
drwxrwxr-x 2 alex consult 4096 Feb 20 10:10 some_dir/
^ ^
| |_____ directory's group
|___________ directory's owner
Donc, afin de permettre à alex et à ben d'avoir un accès en écriture à some_dir
, le some_dir
le répertoire lui-même doit appartenir au groupe consult
. Si ce n'est pas le cas, le propriétaire du répertoire (alex dans votre exemple), devrait émettre la commande suivante:
$ chgrp consult some_dir/
ou pour changer la propriété du groupe de tout ce qui se trouve dans le répertoire:
$ chgrp -R consult some_dir/
Cela ne fonctionnera que si alex est membre du groupe consult
, ce qui semble être le cas dans votre exemple.
Cela ne permettra pas à ben d'accéder à tous les répertoires d'Alex pour deux raisons:
consult
consult
mais alex n'a peut-être pas choisi d'y autoriser l'accès au groupe rwx
.En bref, la réponse dépend à la fois de la propriété du groupe et des bits d'autorisation de groupe définis pour l'annuaire.
Tout cela est fourni à condition que vous n'utilisiez aucune mesure supplémentaire contrôle d'accès obligatoire sur votre système.
Cela incitera alex et ben à colabrer mutuellement dans ce répertoire, et ils ne peuvent pas collaborer dans d'autres Dir ..
Modifier le groupe d'utilisateurs à l'aide de
# usermod -a -G alex,ben alex
Ensuite, modifiez l'autorisation pour le dossier
# chown alex:ben consult_documents
Vérifiez ici que je l'ai travaillé
$ Sudo usermod -a -G alex,ben alex
$ Sudo chown alex:ben consult_documents/
cd consult_documents/
$ touch babin
drwxrwxr-x 2 alex ben 4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex 0 Feb 20 15:19 babin
$ su - ben
cd /home/alex/consult_documents/
ben@system99:/home/alex/consult_documents$ touch babin1
ben@system99:/home/alex/consult_documents$ ls -la
total 8
drwxrwxr-x 2 alex ben 4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex 0 Feb 20 15:19 babin
-rw-rw-r-- 1 ben ben 0 Feb 20 15:19 babin1
ben@system99:/home/alex/consult_documents$
Si j'ai bien compris votre question, la réponse est oui.
Laisse-moi expliquer:
Vos droits d'accès aux dossiers et fichiers sont divisés en trois catégories:
xxxyyyzzz
xxx are access rights for the owner
yyy are access rights for the owner's group
zzz are the access rights for everyone else
Chaque fichier et dossier doit appartenir à un utilisateur.
Ce qui veut dire que si vous avez un dossier nommé consult_documents, et que vous voulez qu'il soit accessible depuis tout le monde du groupe Consult, vous aurez ceci (avec 755 droits d'accès):
drwxrwxr-x Alex Consult [......]
Le répertoire appartient à Alex et le groupe est Consult. Alex a des droits d'accès RWX dessus. Group Consult dispose de droits d'accès RWX sur celui-ci. D'autres utilisateurs ont des droits RX.
Comme votre utilisateur Alex a plusieurs groupes, vous pouvez choisir le groupe avec lequel partager.
Par exemple, si votre dossier appartient à Alex du groupe Alex:
drwxrwxr-x Alex Alex [......]
Fais le:
chown Alex:Consult your_folder
Cela deviendra:
drwxrwxr-x Alex Consult [......]
Et puis le répertoire est disponible pour le groupe Consult.
Veuillez noter que, pour autant que je sache, vous pouvez ajouter un groupe qui ne fait pas partie du groupe du propriétaire. Mais je ne sais pas si c'est recommandé (pas clair lors de la lecture des droits d'accès).
setfacl -m g: transmission-debian: rwx -R/mnt/sra
Trouvé cette commande Nice, au lieu de chown qui changera complètement le propriétaire du fichier ou du répertoire!
Vous verrez sur un 'ls -Al' qu'un signe + sera ajouté pour montrer qu'il y a plus d'un propriétaire!
drwxr-xr-x 2 root root 4096 8 novembre 19:11 sdc1 /
drwxrwxr-x + 3 root root 4096 17 février 19:16 sra /
Et puis vous pouvez utiliser getfacl pour voir qui peut écrire ou lire le fichier ou le répertoire!
# fichier: sra
# propriétaire: root
# groupe: utilisateur root :: rwx
groupe :: r-x
groupe: debian-transmission: rwx
masque :: rwx
autre :: r-x
par défaut: user :: rwx
par défaut: group :: r-x
par défaut: groupe: debian-transmission: rwx
par défaut: mask :: rwx
par défaut: autre :: r-x