O comando chmod

O comando chmod#

O comando chmod (change mode) altera as permissões de acesso e os bits de modo de arquivos e diretórios.

Sua principal característica é permitir a definição de permissões por dois formatos:

  • Octal: utiliza números de 0 a 7 para representar combinações de permissões.

  • Simbólico: utiliza letras como u, g, o, r, w e x, acompanhadas de operadores.

Sintaxe#

chmod [OPÇÕES] MODO ARQUIVO...

Exemplos:

chmod 644 relatorio.txt
chmod u+x script.sh
chmod g-w relatorio.txt

No primeiro caso, o modo é especificado em octal. Nos outros dois, a especificação é simbólica.

Entendendo rwx#

As permissões básicas podem ser representadas por três bits:

Permissão

Símbolo

Valor binário

Valor octal

Sem permissão

---

000

0

Execução

--x

001

1

Escrita

-w-

010

2

Escrita e execução

-wx

011

3

Leitura

r--

100

4

Leitura e execução

r-x

101

5

Leitura e escrita

rw-

110

6

Leitura, escrita e execução

rwx

111

7

O valor de cada permissão individual é:

  • r = 4

  • w = 2

  • x = 1

O valor de uma combinação é obtido pela soma dos valores correspondentes às permissões habilitadas. A Tabela 2 demonstra 3 exemplos de conversão da representação simbólica para representação octal[1].

Tabela 2 Representações das permissões/modo do sistema de arquivos do Linux#

Simbólica

Adição

Resultado

rwx

4 + 2 + 1

7

r-x

4 + 0 + 1

5

rw-

4 + 2 + 0

6

Essa representação permite compreender tanto o formato octal quanto a correspondência entre os dígitos e os caracteres apresentados por ls -l.