chown não me dá nenhum direito

0

Eu tenho uma pasta, my-folder . De seu diretório pai, primeiro faço:

sudo chown -cR matthewslouismarie: my-folder

Se eu fizer isso: chmod -cR 600 my-folder , obtenho:

chmod: cannot access 'my-folder/build.sh': Permission denied
chmod: cannot access 'my-folder/vmdk': Permission denied
chmod: cannot access 'my-folder/.git': Permission denied
chmod: cannot access 'my-folder/run.sh': Permission denied
chmod: cannot access 'my-folder/docker': Permission denied
chmod: cannot access 'my-folder/.gitignore': Permission denied

Eu não deveria possuir esta pasta e seu conteúdo?

Notas:

A execução de sudo chmod -cR 600 my-folder não imprime nada. matthewslouismarie é o que recebo quando digito whoami .

    
por Louis-Marie Matthews 31.01.2018 / 20:05

2 respostas

1

Como @andyDalton diz que você precisa de x (execute) permissões para procurar em um diretório.

Portanto, você pode definir a permissão para 700 , mas isso definirá x no arquivo normal.

Se você tiver gnu chmod , poderá usar o modo simbólico:

chmod -cR u+rwX my-folder

Isso só irá adicionar à permissão usuário e só adicionará x se ele for um diretório ou já existir no grupo ou outro.

Considere também se você precisa usar chmod . Pode já ser como você quer. chown não redefine.

    
por 31.01.2018 / 20:33
4

A permissão x nos diretórios é o que controla se um usuário pode ou não atravessar esse diretório. Ao usar o modo 600 , você removeu o x bit e, portanto, não pode entrar no diretório.

Tente isto:

find my-folder -type d -exec chmod 700 {} \;

Isso alterará as permissões dos vários diretórios para 700 ( rwx------ ). Se você quiser que os arquivos sejam 600 , da mesma forma, você poderia fazer:

find my-folder -type f -exec chmod 600 {} \;
    
por 31.01.2018 / 20:08

Tags