Adicione permissões de leitura a todos os diretórios de um caminho

Adicione permissões de leitura a todos os diretórios de um caminho

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 xbit de execução. Sem isso, rnã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

informação relacionada