Mudar permisões de diretorios

Iniciado por rodrigo2752, 30 de Junho de 2008, 14:37

tópico anterior - próximo tópico

rodrigo2752

Boa Tarde Senhores,

    Gostaria de mudar permissões apenas dos diretórios de um sitema de arquivos utilizando o chmod mantendo as permissões originais nos arquivos, alguem pode me ajudar?

cicerocomp

pelo que eu sei.. é so dar um
Citarchmod XXX /diretorio
se quiser dar essa permissao para todos os diretorios dentro desse ai coloca um -R
[ O.o ]
Cícero Verneck Corrêa
Ciência da Computação
[DoctumTec]
www.doctumtec.com.br

rodrigo2752

Se eu fizer isso vou alterar tambem os arquivos dentro do diretorio poremm quero alterar apenas os diretorios que estão dentro do diretorio principal

clcampos

Citação de: rodrigo2752 online 30 de Junho de 2008, 14:43
Se eu fizer isso vou alterar tambem os arquivos dentro do diretorio poremm quero alterar apenas os diretorios que estão dentro do diretorio principal

Só altera a permissão dos arquivos de dentro do diretório se usar a opção -R, caso contrário apenas o arquivo é alterado.

Cuidado ao alterar as permissões de um diretório, principalmente se for do sistema.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

cicerocomp

dei um man no chmod aki e nao achei nada...

to achando que vc vai ter que dar permissao manualmente em cada arquivo...
se eu achar alguma coisa falo aki!
[ O.o ]
Cícero Verneck Corrêa
Ciência da Computação
[DoctumTec]
www.doctumtec.com.br

rodrigo2752

Na verdade o que eu quero é mudar a permisão "apenas dos diretorios contido em um diretorio"

cicerocomp

acho que a melhor solução pra isso mesmo é mudar a permissao de cada diretorio,,, um por um!
[ O.o ]
Cícero Verneck Corrêa
Ciência da Computação
[DoctumTec]
www.doctumtec.com.br

rodrigo2752

Bom se não fosse mais de 500 eu o faria hehehe  ;D :o

clcampos

Eu acho que não entendi bem, como estão seus diretórios? Da para dar um exemplo da organização ai, e apenas do que você precisa alterar as permissões?
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

raidicar

#9
Vamos la, acho que eu entendi
traduzindo:

Sua estrutura é composta praticamente de um unico diretório principal.
Dentro desse diretório, existe arquivos e centenas de subdiretórios.
Dentro de cada subdiretório existem mais arquivos e em alguns casos mais subdiretórios.

O que vc deseja é mudar a permissão dessas centenas de subdiretórios a partir do diretório principal, incluindo os subdiretórios dentro de cada subdiretório que possa existir e assim por diante, mas, ao mesmo tempo, o comando que executar essa ação não pode mudar a permissão de nenhum arquivo dentro do diretório principal e seus subdiretórios e assim por diante.

Vou tomar como ponto de partida o seguinte:

Simulando uma estrutura, que poderia ser /home/rodrigo2752/Raiz
Raiz = Diretório principal que contem toda a salada, ou seja, centenas de pastas, subpastas e arquivos.

A solução para a sua necessidade é o seguinte comando:
find /home/rodrigo2752/Raiz -type d -exec chmod 777 {} \;

Explicando:
O "find" localiza um objeto, seja ele um diretório ou arquivo.
O "-type d" informa ao find para localizar apenas os diretórios.
Como especificamos o caminho "/home/rodrigo2752/Raiz" o findo tomará como ponto de partida o diretório "Raiz" que é seu diretório principal.
O "-exec" gera a ação, que é executar o comando "chmod 777" sobre cada diretório encontrado dentro de "/Raiz" e dentro de cada subdiretório dentro dos diretórios de "Raiz" e assim por diante.
O "chmod 777" aplica permissão total aos diretórios, permitindo que cada ususário leia, exclua ou altere o diretório.
A sintaxe "{}" é quem permite isso.
O "\;" fecha a linha de comando.
Obs1: atenção para o espaço existente entre a sintaxe "{}" e "/;"
Obs2: Se utilizar o "-type f" no lugar de "-type d" o comando aplicara as alterações nos arquivos e não mudara as permissões da pasta.

Se for isso, pronto, coloque [Resolvido] em seu tópico e boa sorte!
Quem ama extremamente, deixa de viver em si e vive no que ama. Na vida três coisas são certas, o amor, a morte e o Linux !
Se Platão disse, então realmente sofremos de uma perigosa doença mental.