As permissões de arquivos no Linux definem quem pode ler, alterar ou executar arquivos e diretórios. Para administrá-las, os comandos mais usados são chmod, para alterar permissões; chown, para mudar o proprietário; e chgrp, para mudar o grupo associado ao arquivo ou diretório.
Entender essas permissões é essencial para trabalhar com segurança em servidores, aplicações, scripts, compartilhamentos e ambientes de infraestrutura.
Resposta rápida: use
chmodpara controlar permissões de leitura, escrita e execução; usechownpara alterar o usuário proprietário; e usechgrppara modificar o grupo proprietário. Antes de mudar qualquer configuração, verifique a situação atual comls -l.
O que são permissões no Linux?
O Linux é um sistema multiusuário. Isso significa que várias pessoas e processos podem usar o mesmo sistema, mas nem todos devem ter o mesmo nível de acesso aos arquivos.
As permissões servem para definir quem pode:
Ler o conteúdo de um arquivo.
Alterar ou excluir um arquivo.
Executar um script ou programa.
Entrar em um diretório.
Criar, remover ou modificar itens dentro de um diretório.
Cada arquivo ou diretório possui permissões associadas a três níveis:
- Proprietário: usuário dono do arquivo.
- Grupo: grupo associado ao arquivo.
- Outros: todos os demais usuários do sistema.
A documentação do Ubuntu resume os comandos principais assim: chmod altera permissões; chown muda usuário e grupo proprietários; e chgrp muda apenas o grupo.
Como verificar permissões de arquivos
Use o comando abaixo para listar os arquivos e visualizar permissões, proprietário e grupo:
ls -lExemplo de saída:
-rw-r--r-- 1 monte-de-dados linux 1250 set 11 14:00 relatorio.txt
Vamos dividir essa informação.
Nesse exemplo:
O usuário
monte-de-dadospode ler e alterar o arquivo.Usuários do grupo
linuxpodem apenas ler.Outros usuários também podem apenas ler.
O que significam r, w e x?
As permissões mais comuns são representadas por letras.
Exemplo prático
Imagine um script chamado backup.sh.
-rw-r--r-- 1 monte-de-dados linux 560 set 11 14:00 backup.sh
Nesse caso, o arquivo pode ser lido e editado pelo proprietário, mas não pode ser executado, porque não possui x.
Para permitir a execução pelo proprietário, use:
chmod u+x backup.sh
Depois, a permissão ficará parecida com:
-rwxr--r-- 1 monte-de-dados linux 560 set 11 14:00 backup.sh
Como usar chmod no Linux
O comando chmod altera as permissões de arquivos e diretórios.
A sintaxe geral é:
chmod [opções] permissões arquivo-ou-diretório
Existem duas formas comuns de trabalhar com chmod:
Notação simbólica: mais legível para iniciantes.
Notação numérica: comum em scripts, servidores e documentação técnica.
Como usar chmod com notação simbólica
Na notação simbólica, você informa:
Quem receberá ou perderá a permissão.
Qual ação será feita.
Qual permissão será alterada.
Identificadores de usuário
Operadores
Permissões
Adicionar permissão de execução
Para permitir que o proprietário execute um script:
chmod u+x backup.sh
Remover escrita do grupo
Para impedir que membros do grupo linux alterem um arquivo:
chmod g-w relatorio.txt
Dar leitura para outros usuários
chmod o+r relatorio.txt
Definir permissões exatas
Para definir leitura e escrita para o proprietário e leitura apenas para grupo e outros:
chmod u=rw,g=r,o=r relatorio.txt
A documentação da Red Hat apresenta essa lógica como:
chmod <nível><operação><permissão> nome-do-arquivo
Em que o nível representa proprietário, grupo ou outros; a operação adiciona, remove ou define permissões; e a permissão é leitura, escrita ou execução.
Como usar chmod com números
A notação numérica é baseada em valores para cada permissão:
Os valores são somados para representar as permissões de proprietário, grupo e outros.
Valores mais comuns
Como ler chmod 644
chmod 644 relatorio.txt
Resultado:
-rw-r--r-- 1 monte-de-dados linux 1250 set 11 14:00 relatorio.txt
Esse é um padrão comum para arquivos de texto e configurações que podem ser editados pelo proprietário, mas apenas lidos por grupo e outros usuários.
Como ler chmod 755
chmod 755 backup.sh
Resultado:
-rwxr-xr-x 1 monte-de-dados linux 560 set 11 14:00 backup.sh
Esse modo é frequentemente usado para scripts e diretórios que precisam ser acessados por outros usuários, mas alterados apenas pelo proprietário.
Quando usar 644, 755 e 700
Os valores adequados variam conforme o objetivo, o usuário que executa o serviço e a política de segurança do ambiente. Não existe uma permissão universal para todos os arquivos.
Como usar chown no Linux
O comando chown altera o proprietário de um arquivo ou diretório.
A sintaxe é:
chown novo_usuario arquivo
Exemplo:
sudo chown monte-de-dados relatorio.txt
Esse comando torna monte-de-dados o proprietário de relatorio.txt.
Alterar usuário e grupo ao mesmo tempo
Você pode alterar proprietário e grupo com a sintaxe:
sudo chown usuario:grupo arquivo
Exemplo:
sudo chown monte-de-dados:linux relatorio.txt
Após o comando, monte-de-dados será o usuário proprietário e linux será o grupo associado.
A referência da Ubuntu para linha de comando apresenta esse formato como chown <usuário>:<grupo> <arquivo>.
Alterar proprietário de forma recursiva
Para aplicar uma alteração a todos os arquivos e subdiretórios de uma pasta:
sudo chown -R monte-de-dados:linux /srv/projeto
Use -R com cuidado. Em um diretório grande ou crítico, essa opção pode alterar proprietários de muitos arquivos de uma só vez.
Atenção: antes de usar
chown -R, confirme o caminho informado. Um diretório errado pode alterar proprietários de arquivos importantes do sistema ou de aplicações em produção.
Como usar chgrp no Linux
O comando chgrp altera apenas o grupo associado a um arquivo ou diretório.
A sintaxe é:
chgrp novo_grupo arquivo
Exemplo:
sudo chgrp linux relatorio.txt
Nesse caso, o proprietário do arquivo continua o mesmo, mas o grupo passa a ser linux.
Alterar grupo de um diretório e seu conteúdo
sudo chgrp -R linux /srv/projeto
Esse comando pode ser útil quando uma equipe precisa compartilhar acesso a um diretório. A documentação da Red Hat mostra o uso de chgrp <nome-do-grupo> <diretório> como parte de uma configuração de acesso por grupo.
Diferença entre chmod, chown e chgrp
Uma forma simples de memorizar:
chmod: muda o que pode ser feito.chown: muda quem é o dono.chgrp: muda qual grupo está associado.
Permissões em arquivos e diretórios: qual é a diferença?
As mesmas letras aparecem nos dois cenários, mas o efeito muda.
Em arquivos
r: permite ler o conteúdo.w: permite modificar o conteúdo.x: permite executar como programa ou script.
Em diretórios
r: permite listar o conteúdo.w: permite criar, remover e renomear itens.x: permite acessar o diretório e entrar nele usandocd.
Exemplo com diretório
chmod 755 /srv/projeto
Nesse caso:
Proprietário: pode listar, criar, remover e acessar itens.
Grupo: pode listar e acessar.
Outros: podem listar e acessar.
Para ambientes compartilhados, talvez seja necessário permitir escrita ao grupo, em vez de liberar acesso a todos.
Exemplo:
chmod 770 /srv/projeto
Isso concede leitura, escrita e execução ao proprietário e ao grupo linux, sem acesso para outros usuários.
Como criar um diretório compartilhado por grupo
Um caso comum em administração Linux é criar uma pasta compartilhada entre membros de uma equipe.
1. Criar ou definir o grupo
Exemplo de grupo:
sudo groupadd linux
2. Adicionar um usuário ao grupo
sudo usermod --append -G linux monte-de-dados
O usuário precisará iniciar uma nova sessão para que a alteração de grupo seja aplicada.
3. Definir o grupo do diretório
sudo chgrp linux /srv/projeto
4. Liberar acesso ao proprietário e grupo
sudo chmod 770 /srv/projeto
5. Fazer novos arquivos herdarem o grupo
sudo chmod g+s /srv/projeto
Ou, em uma única configuração:
sudo chmod 2770 /srv/projeto
O primeiro 2 ativa o bit setgid no diretório. Assim, novos arquivos e subdiretórios criados dentro dele tendem a herdar o grupo do diretório, o que facilita a colaboração controlada. A Red Hat documenta uma abordagem semelhante usando chgrp para associar o grupo ao diretório e chmod g+rwxs para conceder ao grupo permissões de leitura, escrita e execução, além do setgid.
Atenção: em diretórios compartilhados, também pode ser necessário configurar a
umask, ACLs ou políticas específicas para garantir que os novos arquivos recebam as permissões esperadas. Teste sempre em um ambiente controlado antes de aplicar em produção.
O que significa chmod 777?
O comando abaixo concede leitura, escrita e execução para proprietário, grupo e outros usuários:
chmod 777 arquivo-ou-diretorio
Em termos práticos, qualquer usuário local com acesso ao sistema pode alterar ou executar o conteúdo, dependendo do tipo de item.
Por esse motivo, 777 não deve ser usado como solução padrão para mensagens de “Permission denied”.
Em vez disso, investigue:
Quem deve ser o proprietário correto?
Qual grupo precisa acessar o arquivo?
Quais permissões são realmente necessárias?
O item é arquivo ou diretório?
O processo que acessa o arquivo roda com qual usuário?
É possível conceder acesso ao grupo, em vez de abrir para todos?
Na maior parte dos cenários, uma combinação de proprietário, grupo e permissões restritas resolve o problema de forma mais segura.
Erros comuns ao trabalhar com permissões
Usar sudo sem entender o impacto
sudo executa comandos com privilégios elevados. Um comando incorreto pode alterar arquivos sensíveis ou afetar serviços.
Antes de executar, confira o caminho e a sintaxe.
Aplicar chmod -R 777
Além de conceder permissões excessivas, a alteração recursiva pode afetar arquivos de configuração, scripts, chaves e dados internos de uma aplicação.
Alterar permissões de arquivos em produção sem validação
Mudanças em arquivos de aplicações, servidores web, bancos de dados ou serviços podem interromper acessos e causar indisponibilidade.
Sempre considere:
Ambiente de teste.
Backup ou ponto de restauração.
Proprietário original.
Permissões originais.
Plano de reversão.
Confundir proprietário com grupo
Mudar o proprietário não é o mesmo que mudar o grupo.
sudo chown monte-de-dados relatorio.txt
Altera o usuário proprietário.
sudo chgrp linux relatorio.txt
Altera apenas o grupo.
sudo chown monte-de-dados:linux relatorio.txt
Altera os dois.
Tentar usar chmod e chown em sistemas de arquivos não compatíveis
Em unidades formatadas com NTFS, FAT32 ou exFAT, o comportamento de permissões pode ser diferente do esperado. O Ubuntu alerta que comandos como chmod e chown não funcionam da mesma maneira em sistemas de arquivos do Windows, pois o controle de permissões pode depender das opções de montagem.
Checklist antes de alterar permissões
Antes de executar chmod, chown ou chgrp, responda:
Estou no diretório correto?
O arquivo ou diretório é realmente o alvo da alteração?
Quem precisa acessar esse item?
Essa pessoa precisa ler, escrever ou executar?
A permissão deve valer para proprietário, grupo ou outros?
A mudança precisa ser recursiva?
O ambiente é de testes ou produção?
Tenho como reverter a alteração se necessário?
Existe uma alternativa mais restrita e segura?
Resumo dos comandos
Continue seus estudos
Permissões são uma das bases da administração de sistemas Linux. Entender chmod, chown e chgrp ajuda a controlar acessos, organizar ambientes compartilhados e evitar problemas de segurança.
Quer sair da teoria e entender Linux na prática?
Baixe gratuitamente o e-book Linux: Da Teoria à Administração de Sistemas e aprofunde seus conhecimentos em terminal, arquivos, permissões, processos, serviços e logs.

