Chown é um comando no Linux que é usado para mudar o dono de um conjunto de arquivos ou diretórios.
Chown vem com múltiplas opções e é frequentemente usado para mudar o grupo que possui o arquivo.
No entanto, em alguns casos, você pode precisar mudar o dono de um diretório com todos os arquivos nele.
Para isso, você pode precisar usar uma das opções do comando chown : recursive chown.
Neste tutorial, você vai aprender como você pode usar recursivamente o comando chown para mudar as pastas e permissões dos arquivos recursivamente.
Table of Contents
Chown Recursively
A maneira mais fácil de usar o comando chown recursivo é executar “chown” com a opção “-R” para recursivo e especificar o novo dono e as pastas que você quer mudar.
$ chown -R <owner> <folder_1> <folder_2> ... <folder_n>
Por exemplo, se você quiser mudar o dono de diretórios e arquivos contidos no diretório home de um usuário específico, você escreveria
$ chown -R user /home/user
Nota : se você precisar de um guia completo sobre o comando chown, nós escrevemos um guia extenso sobre permissões de arquivos no Linux.
Chown User and Group Recursively
Para mudar o usuário e o grupo proprietário dos diretórios e arquivos, você tem que executar “chown” com a opção “-R” e especificar o usuário e o grupo separados por colons.
$ chown -R <user>:<group> <folder_1> <folder_2> ... <folder_n>
Por exemplo, digamos que você queira mudar o usuário proprietário dos arquivos para “user” e o grupo proprietário dos arquivos para “root”.
Para conseguir isso, você executaria o seguinte comando
$ chown -R user:root /home/user
Congratulações, você usaria com sucesso o comando “chown” recursivamente para mudar de dono no seu servidor!
Chown recursively using find
Uma outra forma de usar o comando “chown” recursively é combiná-lo com o comando “find” em ficheiros de procura que correspondam a um determinado padrão e mudar os seus proprietários e grupos.
$ find <path> -name <pattern> -exec chown <user>:<group> {} \;
Por exemplo, digamos que quer mudar o dono de todos os ficheiros TXT que estão presentes dentro de um determinado directório no seu servidor.
Primeiro de tudo, é muito recomendado executar o comando “find” sozinho para verificar se está a combinar os ficheiros correctos.
Neste exemplo, vamos comparar todos os ficheiros TXT no directório home do utilizador actual.
$ find /home/user -name *.txt
Agora que tenha a certeza de que está a procurar os ficheiros correctos, pode ligá-los com o comando “chown” de modo a alterar recursivamente as permissões.
$ find /home/user -name *.txt -exec chown user {} \;
Como pode ver, o dono dos ficheiros TXT foi alterado, mas nenhum dos outros ficheiros e directórios foi alterado.
Sendo cuidadoso com chown recursivo
No Linux, executar comandos como chown, chmod ou rm é definitivo : não há volta atrás.
Como consequência, você terá que ter muito cuidado para não executar nenhum comando que prejudique o seu sistema.
Este ponto é ilustrado na secção anterior : corremos o comando find sozinho e certificámo-nos que era o resultado correcto.
Então, executámos o comando chown de modo a alterar recursivamente as permissões dos ficheiros do comando anterior.
Como regra geral : se você não tem certeza da saída de um comando, divida-o em partes menores até ter certeza de que não executará nada prejudicial.
Conclusion
Neste tutorial, você aprendeu como executar o comando chown recursivamente no seu sistema.
Você aprendeu que você pode consegui-lo usando a opção “-R” ou combinando-o com o comando find.
Permissões do Linux são um tópico amplo : nós realmente encorajamos você a dar uma olhada em nosso guia completo sobre Permissões do Linux se você quiser aprender mais.
Também, se você estiver interessado em Administração de Sistemas Linux, temos uma seção completa dedicada a ele no site, então não deixe de conferir!