fbpx chmod no Linux: Permissões 755, +x e -R Explicadas | Certificação Linux

Comando chmod no Linux: Permissões com Octal e Simbólico

📅 17/11/2021 ⏱ 5 min ✍️ Uira Ribeiro
Linux
Comando chmod no Linux: Permissões com Octal e Simbólico
Exam Pass App — mais de 7.000 questões LPI, offline, em 5 idiomas, disponível no Android e na App Store
Disponível no
Google Play
Disponível na
App Store

O comando chmod é uma das ferramentas mais essenciais no Linux para administrar permissões de arquivos e diretórios. Com o chmod, você pode controlar quem pode ler, escrever ou executar arquivos no seu sistema, garantindo a segurança e a integridade dos dados. Neste guia completo, você aprenderá como utilizar o chmod, como as permissões funcionam no Linux, e exemplos práticos para aplicar em seu dia a dia.

O que é o Comando chmod?

O comando chmod (change mode) é usado para alterar as permissões de arquivos e diretórios no Linux. As permissões controlam o que diferentes tipos de usuários (dono, grupo, outros) podem fazer com um arquivo ou diretório, como ler, escrever ou executá-lo. Entender como usar o chmod é fundamental para gerenciar a segurança e o acesso no seu sistema.

Como Funcionam as Permissões no Linux?

No Linux, cada arquivo ou diretório tem três tipos de permissões para três categorias de usuários:

  1. Usuário (owner): O proprietário do arquivo.
  2. Grupo (group): Um grupo de usuários ao qual o arquivo pertence.
  3. Outros (others): Todos os outros usuários.

As permissões são representadas por três letras:

  • r: Permissão de leitura (read).
  • w: Permissão de escrita (write).
  • x: Permissão de execução (execute).

Cada uma dessas permissões pode ser atribuída ao usuário, grupo e outros.

Usando o Comando chmod

O comando chmod pode ser utilizado de duas maneiras principais: usando a notação simbólica ou a notação numérica.

1. Notação Simbólica

A notação simbólica usa letras para representar as permissões:

  • u: Usuário (owner)
  • g: Grupo
  • o: Outros
  • a: Todos (user, group, others)

Para adicionar, remover ou atribuir permissões, use os símbolos +, -, e =.

Exemplo:

chmod u+rwx,g+rx,o+r arquivo.txt

Esse comando concede todas as permissões ao usuário, permissões de leitura e execução ao grupo, e apenas leitura para outros.

2. Notação Numérica

Na notação numérica, cada permissão é representada por um número:

  • r = 4
  • w = 2
  • x = 1

As permissões são combinadas para formar um número de 3 dígitos. Cada dígito representa as permissões do usuário, grupo, e outros, respectivamente.

Exemplo:

chmod 755 script.sh

Esse comando define as permissões para que o usuário tenha leitura, escrita e execução (7 = 4+2+1), enquanto o grupo e outros têm apenas leitura e execução (5 = 4+1).

Exemplos Práticos do Uso do chmod

1. Tornando um Arquivo Executável

Se você tem um script que deseja tornar executável:

chmod +x script.sh

Esse comando adiciona a permissão de execução para todos os usuários.

2. Removendo Permissões de Escrita para Outros

Para garantir que apenas o proprietário possa modificar um arquivo:

chmod o-w arquivo.txt

Esse comando remove a permissão de escrita para outros usuários.

3. Definindo Permissões Recursivas

Se você precisa alterar as permissões de todos os arquivos e diretórios dentro de uma pasta:

chmod -R 755 /caminho/para/diretório

O -R aplica as permissões recursivamente a todos os arquivos e subdiretórios.

4. Restringindo Acesso Totalmente a Outros

Para impedir que qualquer usuário além do proprietário acesse um arquivo:

chmod 700 arquivo.conf

Esse comando garante que apenas o proprietário pode ler, escrever e executar o arquivo.

5. Permissões Padrão com umask

Se você quer que novos arquivos criados tenham permissões específicas automaticamente, você pode configurar isso com o umask:

umask 022

Esse comando faz com que novos arquivos sejam criados com permissões 755 (ou rw-r--r-- para arquivos).

Entendendo Permissões Especiais: SUID, SGID, e Sticky Bit

Além das permissões básicas, o Linux também possui permissões especiais que podem ser configuradas com chmod.

1. SUID (Set User ID)

Quando o SUID é definido, um arquivo executável roda com as permissões do proprietário ao invés do usuário que o executa:

chmod u+s arquivo

2. SGID (Set Group ID)

Quando o SGID é aplicado a um diretório, os arquivos criados nele herdam o grupo do diretório:

chmod g+s diretório

3. Sticky Bit

O Sticky Bit em um diretório impede que usuários removam arquivos que não possuem:

chmod +t /diretório/compartilhado

Conclusão

O comando chmod no Linux é uma ferramenta poderosa para gerenciar as permissões de arquivos e diretórios. Compreender e aplicar as permissões corretas é fundamental para garantir a segurança e a funcionalidade do seu sistema. Seja configurando um simples script ou gerenciando um diretório compartilhado, o chmod oferece a flexibilidade necessária para atender às suas necessidades.

Dica: Sempre revise as permissões dos arquivos e diretórios críticos em seu sistema para evitar acessos não autorizados e manter a integridade dos dados.

Explore mais sobre como alterar proprietários de arquivos com o comando chown e como configurar permissões padrão para novos arquivos usando umask em nosso guia completo. Se você precisar de permissões avançadas, leia nosso post sobre Access-Control-Lists (ACLs).

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Depois de anos vendo profissionais perderem horas em tarefas simples por não conhecer as ferramentas certas do Linux, decidi ensinar.
Hoje sou autor da maioria dos Materiais de Aprendizado oficiais da LPI e mentor de mais de 14.000 alunos certificados.

Conheça minha história completa →

Isso foi só uma peça. O curso ensina o caminho completo — do primeiro comando ao dia da prova.

Certificação Linux — a plataforma líder em certificações Linux no Brasil
WhatsApp