1. Conceito de Permissões
No Linux, cada arquivo ou diretório possui permissões que determinam quem pode ler, escrever ou executar esse recurso. Essas permissões são essenciais para garantir a segurança e o controle de acesso no sistema.
2. Estrutura das Permissões
As permissões de arquivos são representadas em três conjuntos principais:
- Usuário (u): O proprietário do arquivo ou diretório.
- Grupo (g): Os membros do grupo ao qual o arquivo pertence.
- Outros (o): Qualquer outro usuário no sistema.
Cada conjunto possui três tipos de permissões:
r: Read (ler)w: Write (escrever)x: Execute (executar)
As permissões aparecem no formato: rwx rwx rwx, onde:
- O primeiro conjunto representa as permissões do usuário.
- O segundo conjunto representa as permissões do grupo.
- O terceiro conjunto representa as permissões de outros.
4. Exemplos de Permissões
Exemplo de permissão: rwx r-x r-x
Detalhamento:
- Primeiro conjunto (
rwx): O usuário pode ler, escrever e executar. - Segundo conjunto (
r-x): O grupo pode ler e executar, mas não escrever. - Terceiro conjunto (
r-x): Outros podem ler e executar, mas não escrever.
Representação Visual:
| Entidade | Permissão | Ação Permitida |
|---|---|---|
| Usuário (u) | rwx | Ler, Escrever, Executar |
| Grupo (g) | r-x | Ler, Executar |
| Outros (o) | r-x | Ler, Executar |
3. Comandos Essenciais
Para modificar e visualizar as permissões no Linux, podemos usar os seguintes comandos:
chmod: Altera as permissões de arquivos e diretórios.chown: Altera o proprietário de arquivos e diretórios.ls -l: Exibe informações detalhadas sobre arquivos e diretórios, incluindo suas permissões.chmod 777: Dá permissões totais (leitura, escrita e execução) para todos os usuários.chmod 755: Dá permissões de leitura, escrita e execução para o usuário e apenas leitura e execução para o grupo e outros.
7. Comando chmod 666
O comando chmod 666 é utilizado para conceder permissões de leitura e escrita para todos os usuários (usuário, grupo e outros) em um arquivo. No entanto, ele não permite execução do arquivo. O número 666 refere-se às permissões de cada conjunto:
- Usuário (u): Leitura e escrita (
rw-) - Grupo (g): Leitura e escrita (
rw-) - Outros (o): Leitura e escrita (
rw-)
Isso significa que todos os usuários do sistema poderão ler e modificar o conteúdo do arquivo, mas nenhum deles poderá executá-lo. Este tipo de permissão pode ser útil em arquivos que não precisam ser executados, mas devem ser acessíveis para edição por vários usuários.
Exemplo de uso do chmod 666:
chmod 666 arquivo.txt
Após executar este comando, qualquer usuário poderá editar o arquivo arquivo.txt, mas não poderá executá-lo.
5. Como Alterar Permissões
Você pode usar o comando chmod para alterar as permissões de arquivos ou diretórios. Aqui estão alguns exemplos:
chmod u+x arquivo.txt: Adiciona permissão de execução para o usuário (proprietário) no arquivoarquivo.txt.chmod g-w arquivo.txt: Remove permissão de escrita para o grupo no arquivoarquivo.txt.chmod o+r arquivo.txt: Adiciona permissão de leitura para outros usuários no arquivoarquivo.txt.
Use o comando ls -l para verificar as permissões de um arquivo:
ls -l arquivo.txt
6. Mais Comandos para Manipulação de Permissões
Aqui estão mais alguns comandos que podem ser úteis para manipulação de permissões:
chmod u-r arquivo.txt: Remove permissão de leitura para o usuário no arquivoarquivo.txt.chmod g+x arquivo.txt: Adiciona permissão de execução para o grupo no arquivoarquivo.txt.chmod o+w arquivo.txt: Adiciona permissão de escrita para outros usuários no arquivoarquivo.txt.chown usuario:grupo arquivo.txt: Altera o proprietário e o grupo do arquivoarquivo.txt.chgrp grupo arquivo.txt: Altera o grupo do arquivoarquivo.txt.getfacl arquivo.txt: Exibe as permissões ACL (Access Control List) do arquivoarquivo.txt.setfacl -m u:usuario:rw arquivo.txt: Define permissões ACL para um usuário específico no arquivoarquivo.txt.umask: Exibe ou define a máscara de criação de arquivos, que controla as permissões padrão de novos arquivos.
Exemplo de uso do umask:
O comando umask define as permissões padrão para novos arquivos. Se você quiser alterar a máscara padrão, pode usar:
umask 022
Isso criaria novos arquivos com permissões rw-r--r--.
8. Comandos Adicionais no Linux
Abaixo estão alguns comandos adicionais que podem ser úteis para gerenciar permissões e outros aspectos do sistema:
chmod 777 arquivo.txt: Concede permissões totais (leitura, escrita e execução) para todos os usuários (usuário, grupo e outros) no arquivoarquivo.txt.chmod 644 arquivo.txt: Dá permissão de leitura e escrita para o usuário e permissão de leitura para o grupo e outros no arquivoarquivo.txt.chmod 700 arquivo.txt: Dá permissões totais (leitura, escrita e execução) apenas para o usuário e nenhuma permissão para o grupo e outros no arquivoarquivo.txt.ls -lh: Exibe informações detalhadas sobre arquivos e diretórios no formato legível por humanos, incluindo permissões, tamanho, proprietário e data de modificação.chmod a+x arquivo.sh: Adiciona permissão de execução para todos os usuários no arquivo de scriptarquivo.sh.chown usuario:grupo arquivo.txt: Altera o proprietário e o grupo do arquivoarquivo.txtpara o usuário e grupo especificados.chown -R usuario:grupo /diretorio: Altera recursivamente o proprietário e o grupo de todos os arquivos e subdiretórios dentro do diretório especificado.chgrp grupo arquivo.txt: Altera o grupo de um arquivo ou diretório especificado para o grupo indicado.lsattr arquivo.txt: Exibe os atributos de um arquivo ou diretório, como se ele é imutável ou anexado a um log.setfacl -m u:usuario:rwx arquivo.txt: Define permissões de controle de acesso (ACL) para um usuário específico no arquivoarquivo.txt.umask 0777: Define a máscara de criação de arquivos para impedir qualquer permissão de leitura, escrita ou execução para novos arquivos (a permissão padrão é 666 para arquivos e 777 para diretórios).
Exemplo de uso do comando ls -lh:
ls -lh arquivo.txt
Isso exibe as permissões de arquivo.txt de forma legível por humanos, juntamente com o tamanho, data de modificação e o proprietário do arquivo.






