Donnez à l'utilisateur la permission d'écrire dans un dossier en utilisant la notation + w


155

Je sais que je peux attribuer la permission d'écrire à un propriétaire / groupe / autres comme ceci:

chmod u+w myfolder

Puis-je spécifier l'utilisateur spécifique ici? Certains aiment ça:

chmod username u+w myfolder

Je ne pense pas que ce soit possible. Pourquoi ne pas simplement ajouter l'utilisateur au groupe?
Emil

Réponses:


159

Si vous souhaitez modifier l'utilisateur propriétaire de ce fichier ou de ce répertoire (dossier), vous devrez utiliser la commande chown. Par exemple, si vous courez

sudo chown username: myfolder

L'utilisateur possédant myfolder sera username. Ensuite, vous pouvez exécuter

sudo chmod u+w myfolder

pour ajouter l'autorisation d'écriture à l'utilisateur nom d'utilisateur.

Mais si vous souhaitez ajouter cet utilisateur au groupe associé à "myfolder", vous pouvez exécuter

sudo usermod -a -G groupname username

et ensuite exécuter

sudo chmod g+w myfolder

pour ajouter l'autorisation d'écriture au groupe.


Il existe un moyen par lequel les deux utilisateurs auront accès au dossier, et un groupe n'est pas nécessaire; cela a été suggéré dans une réponse à la même question ici: superuser.com/a/235398/191720.
Luan Nico

Puis-je faire cela sans sudo?
Becko le

1
@becko: Vous pouvez le faire si vous passez à un shell racine.
Charo

1
@ Charo je voulais dire sans racine
becko

1
@AER: Dans la première commande, si deux points suivent, usernamele groupe propriétaire est également remplacé par username(si vous l'omettez, le groupe propriétaire ne changera pas).
Charo

192

Vous pouvez utiliser setfacl:

setfacl -m u:username:rwx myfolder

Cela définit des autorisations pour des utilisateurs spécifiques, sans changer la propriété de l'annuaire.

Consultez la page de manuel pour plus de détails et d’exemples.


8
Réponse parfaite! Est également setfacldisponible sur CentOS ( yum -y install acl) et FreeBSD.
Viet

7
juste une remarque: setfacl = set Fichier ACL, ACL = liste de contrôle d'accès, donc pour "setFacl" - un moyen plus simple de se souvenir, je pense.
Yawar Murtaza

12
Si vous souhaitez l'appliquer de manière récursive à tous les sous-répertoires: ajoutez le drapeau -R comme ceci:setfacl -R -m u:username:rwx myfolder
Jose A

meilleure façon de donner la permission à un nouvel utilisateur
Rajesh Mbm

1
Existe-t-il un moyen d'accorder à un utilisateur rwsans modifier aucune xautorisation existante , si elle fonctionne sur plusieurs fichiers ou de manière récursive?
Fan Qi

8

Non, ce n'est pas possible. Vous pouvez soit changer le propriétaire du fichier avec

[sudo] chown username: foldername

ou vous pouvez ajouter l'utilisateur au groupe qui possède le fichier avec

usermod -a -G {group-name} username

useradd -G {group-name} usernameme dit que le nom d'utilisateur existe déjà
Erdal G.

J'ai essayé cela, mais mon utilisateur ne peut toujours pas écrire dans ce dossier
Sonic Soul
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.