Conceda permissão específica ao usuário para gravar em uma pasta usando a notação + w


154

Eu sei que posso atribuir a permissão para escrever para um proprietário / grupo / outros como este:

chmod u+w myfolder

Posso especificar o usuário específico aqui? Alguns assim:

chmod username u+w myfolder

Eu não acho que é possível. Por que você não adiciona o usuário ao grupo?
Emil

Respostas:


158

Se você quiser alterar o usuário possuir este arquivo ou diretório (pasta), você terá que usar o comando chown. Por exemplo, se você executar

sudo chown username: myfolder

o usuário que possui minha pasta será o nome de usuário. Então você pode executar

sudo chmod u+w myfolder

para adicionar a permissão de gravação ao nome do usuário.

Mas se você deseja adicionar este usuário ao grupo associado ao "myfolder", você pode executar

sudo usermod -a -G groupname username

e depois executar

sudo chmod g+w myfolder

para adicionar a permissão de gravação ao grupo.


Existe uma maneira pela qual os dois usuários terão acesso à pasta e um grupo não é necessário; foi sugerido em uma resposta para a mesma pergunta aqui: superuser.com/a/235398/191720.
Luan Nico

Posso fazer isso sem sudo?
Becko

1
@ Becko: Você pode se você soltar em um shell raiz.
Charo

1
@Charo eu quis dizer, sem raiz
Becko

1
@AER: No primeiro comando, se dois pontos seguirem usernameo grupo proprietário também será alterado para username(se você omitir esses dois pontos, o grupo proprietário não será alterado).
Charo #

192

Você poderia usar setfacl:

setfacl -m u:username:rwx myfolder

Isso define permissões para usuários específicos, sem alterar a propriedade do diretório.

Confira a página de manual para obter mais detalhes e exemplos.


8
Resposta perfeita! Também setfaclestá disponível no CentOS ( yum -y install acl) e no FreeBSD.
Viet

7
apenas uma observação: setfacl = set ACL do arquivo, ACL = lista de controle de acesso, portanto, para abreviar "setFacl" - maneira mais fácil de lembrar, eu acho.
Yawar Murtaza

12
Se você quer aplicá-lo de forma recursiva para todos os subdiretórios: adicionar a opção -R assim:setfacl -R -m u:username:rwx myfolder
Jose A

maneira mais fácil de dar permissão para um novo usuário
Rajesh Mbm

1
Existe uma maneira de conceder a um usuário rwsem alterar nenhuma xpermissão existente , se estiver operando em vários arquivos ou recursivamente?
Qi Fan

8

Não, isso não é possível. Você pode alterar o proprietário do arquivo com

[sudo] chown username: foldername

ou você pode adicionar o usuário ao grupo que possui o arquivo com

usermod -a -G {group-name} username

useradd -G {group-name} usernameme diz que nome de usuário já existe
Erdal G.

Eu tentei isso, mas o meu usuário ainda não pode escrever para essa pasta
o Sonic Alma
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.