Um Modelo Mental para Permissões Linux: rwx e owner/group/other

Um Modelo Mental para Permissões Linux: rwx e owner/group/other

A String de Permissões Parece um Feitiço?

Você roda ls -l, e lá está no início de cada linha: uma string como -rw-r--r--. "O que esse código significa?" Essa string são as permissões do arquivo — as regras de quem pode fazer o quê com ele.

Parece críptico, mas na verdade são apenas dois eixos simples lado a lado: quem e o que pode fazer. Neste guia, Lina e o veterano Linny constroem um modelo mental intuitivo a partir de owner / group / other e dos bits rwx (read / write / execute). Ao final, você vai olhar para -rwxr-xr-- e saber instantaneamente o que ele concede.

O que Você Vai Aprender

  • Que permissões decidem "quem" pode fazer "o quê" em um arquivo
  • O significado de owner, group e other
  • O significado de r (read), w (write) e x (execute)
  • Como ler os primeiros 10 caracteres do ls -l
  • Como rwx significa algo diferente para diretórios
  • Como modos numéricos como 755 e 644 se mapeiam para rwx

1. Por que Existem Permissões?

Conclusão: Permissões são a regra de "quem pode fazer o quê neste arquivo". Elas impedem que outros leiam ou quebrem seus arquivos sem autorização.

Lina: Veterano Linny, o que é aquele -rw-r--r-- no início de cada linha do ls -l? Fiquei fingindo que não via...
Veterano Linny: São as "permissões" — os direitos de acesso a um arquivo. Elas decidem "quem" pode fazer "o quê" com ele.
Lina: Quem, e o quê?
Veterano Linny: Isso. O Linux foi construído presumindo que uma máquina é compartilhada por muitas pessoas. Então é preciso ter controle fino: "ninguém mais deve sobrescrever meus arquivos, mas ler tudo bem". Esse controle é a configuração de permissões.
Lina: Entendi. É como o quão trancado cada arquivo está.

Permissões = uma tabela "quem" × "o quê"

Permissões parecem difíceis, mas são construídas a partir de apenas dois eixos.

  • Quem: owner / group / other
  • O quê: r (read) / w (write) / x (execute)

Uma vez que você entenda essa grade 3 × 3, pode decodificar qualquer string de permissão.

2. O que São owner / group / other?

Conclusão: As permissões são definidas para três partes: owner (o dono do arquivo), group (membros do grupo) e other (todos os demais).

Lina: Vamos começar pelo eixo "quem".
Veterano Linny: O "quem" se divide em três grupos: owner, group e other.
Lina: Como três personagens em uma história?
Veterano Linny: Boa forma de ver. O owner é a pessoa que criou o arquivo — o dono. O group é o conjunto de pessoas no grupo atribuído ao arquivo. E other é todo mundo que não é nenhum dos dois.
Lina: Em termos de um documento de escritório...?
Veterano Linny: Exatamente isso. O owner é você, que escreveu o documento; o group é sua equipe; other são pessoas de fora da empresa. Para o mesmo documento você pode querer "eu posso editar", "minha equipe pode visualizar", "pessoas de fora não podem tocar". Mesma ideia.
Classe Abreviação Quem representa
owner u A pessoa que é dona do arquivo
group g Membros do grupo do arquivo
other o Todos que não são nenhum dos dois acima

Os três são abreviados u / g / o

Em comandos como chmod, owner é escrito u (user), group é g e other é o. Escreva a (all) para significar os três de uma vez. Você usará essa abreviação mais tarde em formas como chmod u+x, então guarde isso na memória.

3. O que Significam r, w e x?

Conclusão: r é read (leitura), w é write (escrita/alteração), e x é execute (execução). Você concede essas três permissões a cada uma das três partes.

Lina: Agora o eixo "o quê" — a parte do rwx.
Veterano Linny: Isso. Cada uma das três letras é uma ação. r é read (leitura), w é write (escrita/alteração) e x é execute (execução).
Lina: O que "execute" significa aqui?
Veterano Linny: O direito de "rodar" um programa ou script. Para rodar script.sh, o arquivo precisa do bit x, senão não roda. Uma nota de texto simples, por outro lado, geralmente não precisa de x.
Lina: Ler, escrever, rodar. Só três — acho que consigo lembrar.
Símbolo Inglês Significado
r read Ler conteúdo / listar entradas
w write Alterar conteúdo / adicionar, deletar
x execute Rodar / entrar

Permissões ausentes aparecem como -

Dentro de rwx, qualquer permissão não concedida aparece como - (um hífen) naquela posição. Então r-- significa "somente leitura; sem escrita, sem execução". rw- significa "leitura e escrita, mas sem execução". Pense no - como um assento vazio: "sem permissão aqui".

4. Como Ler os Primeiros 10 Caracteres do ls -l?

Conclusão: Os primeiros 10 caracteres são "1 caractere de tipo + rwx do owner + rwx do group + rwx do other". Leia-os em blocos de três.

Lina: Aqui vem a parte principal. Quero conseguir ler -rw-r--r--!
Veterano Linny: Vamos separar em partes. Esses 10 caracteres são um caractere inicial mais "3 caracteres × 3 blocos".
Lina: Então você os divide de três em três.
Veterano Linny: Isso. O primeiro caractere é o tipo do arquivo (- para arquivo regular, d para diretório). Divida os nove restantes em três, e da esquerda para a direita você tem as permissões de owner, group e other. É exatamente a grade "quem × o quê" de antes.

Separar -rw-r--r-- fica assim:

-  rw-  r--  r--
↑   ↑    ↑    ↑
tipo owner group other
  • - inicial: um arquivo regular (d seria um diretório)
  • rw-: owner pode ler r, escrever w, mas não executar -
  • r--: group só pode ler r
  • r--: other também só pode ler r

Em outras palavras, "o owner pode ler e escrever, mas todos os demais só podem ler" — uma configuração muito comum para arquivos de configuração.

Vamos verificar na prática.

ls -l memo.txt
-rw-r--r-- 1 lina staff 42 Jun  6 10:00 memo.txt

Um modelo para ler os 10 caracteres

  1. 1o caractere: - (arquivo) ou d (diretório)
  2. Caracteres 2–4: o rwx do owner
  3. Caracteres 5–7: o rwx do group
  4. Caracteres 8–10: o rwx do other

Na dúvida, recite "tipo, eu, equipe, todos os demais" enquanto divide em blocos de três.

Leia as colunas 3 e 4 do ls -l juntas

Após a string de permissão, a parte lina staff mostra o nome do owner e o nome do group. -rw-r--r-- só faz sentido quando você o combina com esses nomes de owner e group. Crie o hábito de ler os nomes ao lado da string de permissão, não só a string em si.

5. rwx Significa o Mesmo para Diretórios?

Conclusão: Não. Para diretórios, r lista o conteúdo, w adiciona ou deleta arquivos, e x permite entrar (cd) nele.

Lina: Diretórios também têm rwx. Significa o mesmo que para arquivos?
Veterano Linny: Boa observação. Na verdade muda um pouco. Um diretório é uma "caixa que contém arquivos", então o alvo de cada ação passa a ser a própria caixa.
Lina: Ler, escrever, executar em uma caixa...?
Veterano Linny: Em ordem: r significa "você pode listar os nomes dos arquivos na caixa", w significa "você pode adicionar ou remover arquivos na caixa", e x significa "você pode entrar na caixa (cd nela)".
Lina: Então x vira "entrar" em vez de "executar".
Veterano Linny: Essa é a parte complicada. Sem x em um diretório, você não consegue fazer cd nele mesmo que tenha conteúdo, e não consegue acessar os arquivos dentro. Por isso diretórios geralmente têm o bit x definido.
Bit Para um arquivo Para um diretório
r Ler o conteúdo Listar os nomes dos arquivos dentro
w Alterar o conteúdo Adicionar ou deletar arquivos
x Rodar o programa Entrar (cd) / acessar o conteúdo

Remover x de um diretório bloqueia o acesso mesmo quando tem conteúdo

Se você retirar x de um diretório, cd falha com Permission denied. Quando "o arquivo deveria estar lá mas não consigo abri-lo", a causa frequentemente é um x ausente no lado do diretório.

6. O que São Números como 755 e 644?

Conclusão: São rwx escritos como números. Some r=4, w=2, x=1 e escreva três dígitos na ordem owner / group / other.

Lina: Também vejo números como chmod 755 ou 644. O que são esses?
Veterano Linny: São rwx escritos como números — as mesmas permissões, só que expressas de forma abreviada com dígitos em vez de letras.
Lina: Como você os converte?
Veterano Linny: Você dá uma pontuação a cada permissão: r vale 4, w vale 2, x vale 1. Some as pontuações das permissões concedidas e esse é o dígito para aquela posição.
Lina: Então rwx seria...?
Veterano Linny: 4 + 2 + 1 = 7. rw- é 4 + 2 = 6. r-- é 4. Alinhe três desses na ordem owner / group / other e você obtém um número de três dígitos como 644.
rwx Soma Dígito
rwx 4 + 2 + 1 7
rw- 4 + 2 6
r-x 4 + 1 5
r-- 4 4
--- 0 0

Então 644 significa rw-r--r-- (owner=6, group=4, other=4), e 755 significa rwxr-xr-x (owner=7, group=5, other=5).

chmod 644 memo.txt
ls -l memo.txt
-rw-r--r-- 1 lina staff 42 Jun  6 10:00 memo.txt

Memorize esses dois primeiro

  • 644 (rw-r--r--): um arquivo normal. Owner lê e escreve; outros só leem.
  • 755 (rwxr-xr-x): um script ou diretório. Owner faz tudo; outros leem e executam (entram).

Esses dois cobrem a maioria dos casos do dia a dia.

7. Como Praticar na Prática?

Conclusão: A forma mais rápida de fixar é realmente digitar ls -l e chmod em um terminal.

Lina: Acho que entendi na teoria, mas ainda não estou confiante...
Veterano Linny: Permissões fixam mais rápido quando você "muda e verifica" em vez de apenas "olha e memoriza". Mude uma permissão com chmod, depois observe como o ls -l muda — o entendimento vem rápido.
Lina: Não é assustador estragar coisas no meu próprio ambiente?
Veterano Linny: Crie um arquivo de prática e você ficará bem. Se ainda tiver nervoso, use um playground que você pode testar no navegador.
chmod u+x script.sh
ls -l script.sh
-rwxr--r-- 1 lina staff 18 Jun  6 10:05 script.sh

Com u+x (adicionar execução para o owner), você pode ver rw- mudar para rwx.

Digite ls -l e chmod várias vezes no terminal do Penguin Gym Linux e veja como o display muda. Uma vez que você sentir "mudar o número → a string muda", as permissões deixam de ser assustadoras.

Resumo

  • Permissões decidem "quem" pode fazer "o quê" em um arquivo
  • Quem: owner (dono) / group (colegas de equipe) / other (todos os demais)
  • O quê: r (read) / w (write) / x (execute, ou entrar para diretórios)
  • Os primeiros 10 caracteres do ls -l são "tipo + owner + group + other", três de cada vez
  • Modo numérico soma r=4, w=2, x=1; aprenda 644 e 755 primeiro

Próxima Leitura