Chmod

De ALT Linux

chmod é um comando unix/linux usado para alterar permissões de arquivos (ou ficheiros) e diretórios (directórios ou pastas). Sua sintaxe é a seguinte:

chmod [permissões] arquivo

O chmod atua basicamente sobre três níveis; usuário 'u', grupo 'g' ou outros 'o'. Tanto pode usar letras como o modo octal para permissões. O modo octal (descrito abaixo) usa números de 0 (zero) a 7 (sete). Usa também letras para designar 'r' leitura, vem do Inglês 'read', 'w' gravação, vem do Inglês 'write' e 'x' vem do Inglês 'execute'.


Modo octal

Você pode observar que a penúltima linha da descrição do modo octal nos permite entender melhor como ele é estruturado. Ex:

chmod 750 arquivo.txt

No exemplo o 7 representa a soma de todas as permissões para o proprietário do arquivo 'user' o 5 a soma de todas as permissões para o grupo: 4 + 1 ou seja, leitura e execução; e por fim a negação de todas as permissões para outros.

A forma de compor o número que codifica grupos e permissões é feito somando os números abaixo para as permissões de cada tipo de utilizador:

Para arquivos (-)
0  (zero) permissão negada
1   permissão de execução
2   permissão de gravação
3   permissão de gravação e execução
4   permissão de leitura
5   permissão de leitura e execução
6   permissão de leitura e gravação
7   soma de todas as permissões
Para diretórios (d)
0  (zero) permissão negada
1   permissão para entrar no diretório
2   permissão para gravar dentro do diretório
3   permissão de entrar e gravar no diretório
4   permissão para listar o conteúdo do diretório
5   permissão de listar e entrar no diretório
6   permissão de listar e gravar no diretório
7   soma de todas as permissões

As permissões em vigor podem ser conhecidas com o comando ls.

Usando letras

É possível e mais humano prescindir do modo octal. Quando a modificação se fizer sobre o grupo por exemplo faremos assim, para adicionar a permissão de escrita:

 chmod g+w arquivo.txt

dessa forma o grupo a que pertence este arquivo passa a ter permissão de gravação no mesmo.

É possível mudar várias permissões para o mesmo ficheiro. Por exemplo:

chmod o+rw envel.ficheiro

atribui a outros, de uma vez, as permissões de leitura e escrita sobre o ficheiro envel.ficheiro.

De forma semelhante é possível mudar permissões de uma só vez para diversas classes de utilizador:

chmod ugo-rwx envel.ficheiro

retira todas as permissões, a todas as classes de utilizador, relativamente ao ficheiro envel.ficheiro.


Outros comandos relacionados com o chmod são chown, que muda o dono de arquivos e pastas (ficheiros), e chgrp, que muda o grupo a que pertence o ficheiro.

Ferramentas pessoais