Skip to content

📁 Tutorial de Permissões de Arquivos e Diretórios no Linux

Aprenda a visualizar, modificar e entender o sistema de permissões no Linux utilizando comandos como chmod, chown e chgrp.


🔍 Introdução

O sistema de permissões do Linux é fundamental para garantir a segurança e organização do sistema. Cada arquivo ou diretório possui regras que definem quem pode ler (r), escrever (w) e executar (x).


📑 Entendendo as Permissões

Execute:

ls -l

Exemplo de saída:

-rwxr-xr-- 1 user grupo 1234 jul 28 10:00 script.sh

Explicando os campos:

Campo Significado
- Tipo de arquivo (- arquivo, d diretório)
rwx Permissões do dono
r-x Permissões do grupo
r-- Permissões de outros (público)
1 Número de links
user Dono do arquivo
grupo Grupo do arquivo
1234 Tamanho em bytes
jul 28 10:00 Data de modificação
script.sh Nome do arquivo

🔧 Modificando Permissões: chmod

🧮 Modo Numérico

As permissões são representadas por números:

Permissão Valor
r (read) 4
w (write) 2
x (execute) 1

Exemplo:

chmod 754 script.sh

Isso define:

  • Dono: 7 = rwx
  • Grupo: 5 = r-x
  • Outros: 4 = r--

🔤 Modo Simbólico

chmod u+x script.sh

Adiciona permissão de execução para o usuário (u).

Outros símbolos:

Símbolo Descrição
u Usuário (owner)
g Grupo
o Outros
a Todos
+ Adiciona permissão
- Remove permissão
= Define exatamente essas permissões

Exemplos:

chmod g-w arquivo.txt     # Remove escrita do grupo
chmod o=r arquivo.txt     # Outros só podem ler
chmod a+x script.sh       # Todos ganham permissão de execução

👤 Mudando Dono e Grupo: chown e chgrp

chown – Altera o dono e/ou grupo

chown novo_dono arquivo.txt
chown novo_dono:novo_grupo arquivo.txt

chgrp – Altera apenas o grupo

chgrp novo_grupo arquivo.txt

Exemplo:

chown joao:desenvolvedores projeto/

📁 Permissões em Diretórios

As permissões têm efeitos diferentes:

Permissão Significado no diretório
r Listar arquivos (ls)
w Criar/apagar arquivos
x Acessar arquivos no diretório

🔄 Permissões Recursivas

chmod -R 755 pasta/
chown -R user:grupo pasta/

📌 Permissões Especiais

🔒 setuid (S)

Permite que o programa execute com permissões do dono.

chmod u+s arquivo

🔒 setgid (S)

Arquivos criados no diretório herdam o grupo.

chmod g+s pasta

🔒 Sticky bit (t)

Em diretórios públicos, evita que usuários deletem arquivos de outros.

chmod +t /tmp

🧪 Exemplos Práticos

1. Tornar um script executável apenas para o dono:

chmod 700 script.sh

2. Permitir que todos leiam um arquivo, mas apenas o dono possa editar:

chmod 644 documento.txt

3. Definir uma pasta compartilhada por um grupo:

chgrp grupo pasta/
chmod 2770 pasta/

✅ Verificando Permissões

stat arquivo.txt

🛑 Atenção

  • Cuidado com chmod 777 — permite tudo para todos, o que representa risco de segurança.
  • Modifique permissões com consciência, especialmente em ambientes multiusuário ou servidores.

📚 Referências