Comando chmod - Alterar permissões pelo terminal - Linux
Índice:
O Linux é um sistema multiusuário, e o acesso aos arquivos é controlado pelas permissões, atributos e propriedade do arquivo. Isso garante que apenas usuários e processos autorizados possam acessar arquivos e diretórios.
Para obter mais informações sobre permissões de arquivo, consulte "Comando Umask no Linux"., explicaremos como alterar recursivamente as permissões de arquivos e diretórios.
Chmod Recursive
O comando
chmod
permite alterar as permissões de arquivos usando o modo simbólico ou numérico.
Para operar recursivamente em todos os arquivos e diretórios em um determinado diretório, use o comando
chmod
com a opção
-R
, (
--recursive
). A sintaxe geral para alterar recursivamente as permissões do arquivo é a seguinte:
chmod -R MODE DIRECTORY
Por exemplo, para alterar as permissões de todos os arquivos e subdiretórios no diretório
/var/www/html
para
755
você usaria:
chmod -R 755 /var/www/html
O modo também pode ser especificado usando o método simbólico:
chmod -R u=rwx, go=rx /var/www/html
Somente o root, o proprietário do arquivo ou o usuário com privilégios de
sudo
podem alterar as permissões de um arquivo. Tenha muito cuidado ao alterar recursivamente as permissões dos arquivos.
Usando o comando
find
Em geral, os arquivos e diretórios não devem ter as mesmas permissões. A maioria dos arquivos não requer a permissão de execução, enquanto você deve definir permissões de execução nos diretórios para mudar para eles.
O cenário mais comum é alterar recursivamente as permissões do arquivo do site para
644
e as permissões do diretório para
755
.
Usando o método numérico:
find /var/www/html -type d -exec chmod 755 {} ;
find /var/www/html -type f -exec chmod 644 {} ;
Usando o método simbólico:
find /var/www/html -type d -exec chmod u=rwx, go=rx {} ;
find /var/www/html -type f -exec chmod u=rw, go=r {} ;
O comando
find
procura por arquivos ou diretórios em
/var/www/html
e passa cada arquivo ou diretório encontrado para o comando
chmod
para definir as permissões.
Ao usar o
find
com
-exec
, o comando
chmod
é executado para cada entrada encontrada. Use o comando
xargs
para acelerar a operação passando várias entradas de uma vez:
find /var/www/html -type d -print0 | xargs -0 chmod 755
find /var/www/html -type d -print0 | xargs -0 chmod 755
find /var/www/html -type f -print0 | xargs -0 chmod 644
find /var/www/html -type f -print0 | xargs -0 chmod 644
Conclusão
O comando
chmod
com as opções
-R
permite alterar recursivamente as permissões do arquivo.
Para definir recursivamente as permissões dos arquivos com base em seu tipo, use
chmod
em combinação com o comando
find
.
Não é possível alterar permissões de arquivo ou pasta no Windows
Se você não puder ou não conseguir alterar permissões de arquivo ou pasta no Windows 10/8 / 7 / Vista, leia este post para solucionar e superar esse problema.
Como redefinir permissões de arquivo NTFS no Windows 10/8/7
Redefinir permissões de arquivo NTFS é um freeware que permite que você facilmente restaurar ou redefinir permissões de arquivo e segurança no Windows 10/8/7, sem usar a linha de comando.
Comando Chmod no linux (permissões de arquivo)
No Linux, o acesso aos arquivos é gerenciado através das permissões, atributos e propriedade do arquivo. Este tutorial aborda como usar o comando chmod para alterar as permissões de acesso de arquivos e diretórios.