Consertando permissões de arquivos e diretórios

Publicado por Márcio Araújo Lopes em 08/11/2012

[ Hits: 22.936 ]

 


Consertando permissões de arquivos e diretórios



Após manutenção que fiz em meu sistema, o meu /home/$USER ficou com as permissões 777 para arquivos e diretórios. Apesar de não ter problemas funcionais, isso não é nada seguro.

Para resolver esta questão, tive que executar 3 simples comandos para restaurar as permissões, de acordo com o padrão do sistema:

# find /home/$USER/.* -type f -exec chmod 644 '{}' \;
# find /home/$USER/.* -type d -exec chmod 755 '{}' \;
# find /home/$USER/* -type d -exec chmod 755 '{}' \;


Explicando:
  • find → Comando de busca;
  • /home/$USER/.* → Diretório raiz da busca;
  • -type (f ou d) → Tipo a ser buscado, neste caso: f busca arquivo e d busca diretórios;
  • -exec → Execução do comando, neste caso chmod e suas devidas permissões;
  • {} → Arquivo ou diretório encontrado;
  • \; → Finalização do comando.

Obs.: A variável $USER contém o login do usuário atual.

-=[ "live long and prosper" ]=-

Márcio Lopes

Outras dicas deste autor

Configurando placa wireless Broadcom BCM43224 no GNU/Linux

Deixando seu Slackware com tty mais "bonitinho"

Leitura recomendada

Gravando um CD rapidamente

pfetch ao invés do neofetch

Comandos para localização de arquivos

Interrompendo processos no apt com segurança

Gerando senhas aleatórias alfanuméricas

  

Comentários
[1] Comentário enviado por gpxlnx em 09/11/2012 - 15:41h

Boa tarde amigo mto boa sua explicacao porém acredito que ficou algo sem sentido pelo menos a meu modo de ver


# find /home/$USER/.* -type d -exec chmod 755 '{}' \;
# find /home/$USER/* -type d -exec chmod 755 '{}' \;


Nessas duas linhas vc esta dando permissões diferentes a arquivos e diretorio nao poderia ser em um comando só com a opção

# find /home/$USER/* -type d -exec chmod 755 '{}' \;

[2] Comentário enviado por marujo em 21/11/2012 - 09:44h

Olá amigo!

Observe que no exemplo acima tive que dar permissão em meu diretório home, que possuem diretórios e arquivos visíveis e ocultos, em meu caso e acredito que no caso da grande maioria, não guardam seus arquivos no raiz do home, como existem somente arquivos ocultos no home de cada usuário (.bashrc, .bash_profile, etc), explanei o comando dessa maneira, porém, alem dos diretórios ocultos (.ssh, .VirtualBox, etc) tenho diretórios visíveis (Documentos, Imagens, etc), por isso houve a necessidade dos dois comandos em questão, lembrando que o comando aplicado dessa maneira é recursivo, ou seja, irá aplicar as permissões nos subdiretórios também.

O ponto em questão é, você pode modificar para atender a sua necessidade da maneira que achar melhor, em meu caso só funcionou dessa maneira. Acredito haver outras, essa é só mais uma.

Espero ter explicado.

[3] Comentário enviado por donnangelo em 07/12/2016 - 18:34h

E no caso de ter dado um chmod -R 755 / , utilizando o usuário root. Como voltar as permissões ao que estava? Essa configuração fez com que eu não consiga mais logar na máquina via ssh (putty).

[4] Comentário enviado por petterson em 10/06/2017 - 20:42h

Olá, no meu caso o proprietário do meu /home/$user é o root. Então quando eu dei os comados todos eles me foram negados. Mesmo após por o sudo na frente, nada deu certo. Então como proceder?

[5] Comentário enviado por sandrocarva em 26/07/2018 - 20:36h

Aqui deu certo. Obrigado amigo.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts