
Quero adicionar (não modificar outras permissões de arquivo) todos os diretórios no caminho escrito abaixo. Algo comochmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/
O caminho
/home/mDB/admin/KNUCKLES/dbs/
Tento com este comando que encontrei em um fórum, mas não funciona para mim.
chmod +r /home/mDB/admin/KNUCKLES/dbs/ -R
Eu só quero alterar as permissões para todos os usuários, não para o proprietário do arquivo/diretório ou para os grupos.
Desde já, obrigado.
Responder1
Você pode dizer:
chmod -R o+r /home/mDB/admin/KNUCKLES/dbs/
Isso darialerpermissão recursivamente paraoutros, ou seja, não é proprietário/grupo.
EDIT: De acordo com o seu comentário, parece que as permissões para diretórios são o problema e não os arquivos. Você poderia dizer:
chmod o+rx /home/mDB/{admin,admin/KNUCKLES,admin/KNUCKLES/dbs}
Observe que, como esses são diretórios, você precisa ativar o x
bit de execução. Sem isso, r
não serviria para nada!
Responder2
Você terá que dividi-lo e emitir vários comandos.
chmod -R xx4 /home/
chmod -R xx4 /home/mDB/
chmod -R xx4 /home/mDB/admin/
chmod -R xx4 /home/mDB/admin/KNUCKLES/
chmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/
Alguém com linha de comando mais avançada do que eu pode conhecer um caminho mais curto.
Responder3
Para definir o bit de execução apenas para diretórios, faça o seguinte:
chmod -R a+X dir
De man chmod:
executar/pesquisar somente se o arquivo for um diretório ou já tiver permissão de execução para algum usuário (X)
Resposta de:https://unix.stackexchange.com/questions/39761/execute-bit-on-directories-but-not-files