Permissões em Linux - Forma Numérica
Índice de conteúdo:
- O que é isso de permissões de arquivos no Linux?
- Modo numérico de atribuir ou remover permissões
- Como alterar permissões
O que é isso de permissões de arquivos no Linux?
As permissões de arquivos no sistema Linux determinam quem pode ou não ter acesso a um determinado ficheiro ou diretório no sistema e quais as permissões concedidas, como editar, visualizar e executar.
As permissões de arquivos no Linux são fundamentais para a segurança do sistema e privacidade do utilizador, pois ajudam a proteger arquivos contra acesso ou modificações não autorizadas.
Estas permissões têm grande importância no sentido em que cada tipo de ficheiro ou pasta, consoante seja do sistema ou do utilizador, tem permissões que apenas permitem ser manipuladas ou alteradas pelo dono/possuidor do arquivo ou root.
Neste laboratório, vamos falar da forma numérica de atribuir permissões de acesso a pastas e ficheiros, exemplificando passo a passo como funcionam e como alterá-las consoante as nossas necessidades.
Veja também: Permissões em Diretórios e Ficheiros no Linux - Forma Simbólica
Modo numérico de representar permissões
As permissões de ficheiro no Linux são numéricas quando são representadas por números.
Na forma numérica, as permissões são representadas por três dígitos mais 0, e cada dígito corresponde a uma determinada permissão. O zero retira permissões. Temos o seguinte:
A adição entre os três dígitos (4, 2 e 1) confere permissões a um dado utilizador ou grupo de utilizadores num determinado ficheiro ou diretório, enquanto o 0 retira permissões.
No exemplo apresentado na Tabela nº 1, um determinado ficheiro tem as permissões de 766:
- Ao utilizador foi atribuída a permissão de nível 7, o que corresponde a 4 + 2 + 1, que são (read, write e execute, respetivamente).
- Ao grupo foi atribuída a permissão de nível 6, o que corresponde a 4 + 2 + 0 (read, write; a permissão de executar foi retirada, daí a existência do 0 no seu lugar).
- Aos outros utilizadores foi atribuída a permissão de nível 6 também, o que corresponde a 4 + 2 + 0, que são (read, write; a permissão de executar foi retirada, daí também a existência do 0 no seu lugar).
read | write | execute | permissões | |
---|---|---|---|---|
utilizador | ||||
grupo | ||||
outros | ||||
Permissões | 766 |
No exemplo apresentado na Tabela nº 2, um determinado ficheiro tem as permissões de 755:
- Ao utilizador foi atribuída a permissão de nível 7, o que corresponde a 4 + 2 + 1, que são (read, write e execute, respetivamente).
- Ao grupo foi atribuída a permissão de nível 5, o que corresponde a 4 + 0 + 1 (read, execute; a permissão 'write' foi retirada, daí a existência do 0 no seu lugar).
- Aos outros utilizadores foi atribuída a permissão de nível 5 também, o que corresponde a 4 + 0 + 1 (read, execute; a permissão 'write' foi retirada, daí a existência do 0 no seu lugar).
read | write | execute | permissões | |
---|---|---|---|---|
utilizador | ||||
grupo | ||||
outros | ||||
Permissões | 755 |
No exemplo apresentado na Tabela nº 3, um determinado ficheiro tem as permissões de 610:
- Ao utilizador foi atribuída a permissão de nível 6, o que corresponde a 4 + 2 + 0, que são (read e write; a permissão de executar foi-lhe retirada, como se poderá notar pelo 0 no seu lugar).
- Ao grupo foi atribuída a permissão de nível 1, o que corresponde a 0 + 0 + 1 (execute; as permissões 'read' e 'write' foram retiradas, daí a existência do 0 nos seus lugares).
- Aos outros utilizadores foram-lhes retiradas todas as permissões, o que corresponde a 0 + 0 + 0 (as permissões 'read', 'write' e 'execute' foram retiradas, daí a existência do 0 nos seus lugares).
Para obtermos mais informações sobre o conteúdo, temos de usar a opção -l
junto ao comando ls
. Correndo o comando $ ls -l
, vemos a lista das pastas: Amigos, Filhos, Pais, Trabalho e um ficheiro .txt
de nome aniversarios com os respetivos metadados que trazem muitas informações sobre o ficheiro ou diretório. Nessas informações, temos as seguintes permissões concedidas:
Se pegarmos na imagem acima, vemos o seguinte:
- No diretório Amigos
- O utilizador (u) que é o dono, tem as permissões de visualizar, alterar e executar: rwx, o mesmo que permissão nível 7
- O grupo (g) que são os utilizadores que o dono adicionou ao seu grupo, tem as permissões de visualizar e executar: rx, o mesmo que permissão nível 5
- Outros (o) utilizadores do sistema têm a permissão de visualizar e executar: rx, o mesmo que permissão nível 5
- No ficheiro aniversarios.txt
- O utilizador (u) que é o dono, tem as permissões de visualizar e alterar: 6
- O grupo (g) que são os utilizadores que o dono adicionou ao seu grupo, só tem a permissão de visualizar: 4
- Outros (o) utilizadores do sistema têm unicamente a permissão de visualizar: 4
Nas permissões de um diretório, o 1 que corresponde ao (x) (executar) na forma simbólica, permite-nos fazer cd
(change directory) e entrar no diretório ou obter a lista do conteúdo do diretório com ls
.
Para alterar permissões, usamos o comando chmod
(change file mode). Se quiseres saber mais sobre este comando, é só ler o manual do mesmo usando o comando man chmod
.
Vamos alterar as permissões no ficheiro aniversarios.txt e vamos retirar a permissão de visualização para o grupo e todos os outros (o) utilizadores do sistema.
chmod 600 aniversarios.txt
Agora vamos alterar as permissões no ficheiro aniversarios.txt e vamos atribuir a permissão de visualização para o grupo (g).
chmod 640 aniversarios.txt
Agora vamos alterar as permissões nos diretórios Filhos e Pais e vamos retirar a permissão de visualização para outros (o).
chmod 751 Filhos/ Pais/
Agora vamos alterar as permissões no diretório Filhos e vamos retirar a permissão de visualização para o grupo (g).
chmod 711 Filhos/
Agora vamos alterar as permissões nos diretórios Filhos e Pais e vamos atribuir as permissões de visualizar e executar para o grupo (g) e outros (o).
chmod 755 Filhos/ Pais/
Conclusão
Exploramos neste artigo a representação numérica das permissões de arquivos no Linux, uma alternativa concisa e poderosa ao modo simbólico. Compreender como os dígitos octais se traduzem em permissões de leitura, escrita e execução para o proprietário, grupo e outros utilizadores é fundamental para uma gestão de acesso eficaz. A combinação destes dois métodos oferece flexibilidade na administração de permissões, permitindo aos utilizadores e administradores do sistema proteger os seus ficheiros e diretórios de forma precisa e adaptada às suas necessidades. Dominar tanto o modo simbólico quanto o numérico proporciona uma compreensão abrangente do sistema de permissões do Linux, essencial para garantir a segurança e a integridade do sistema.
Neste post, falamos sobre Permissões Numéricas. Num outro artigo, já tínhamos abordado as Permissões Simbólicas, caso queira dar uma olhada. Espero que este post tenha sido útil para o entendimento das permissões. Obrigado por estar por cá.
Voltar para o início da página
Teste seus conhecimentos!
Curioso para saber o quanto você absorveu sobre permissões numéricas? Clique no botão abaixo para fazer um rápido quiz e desafie sua compreensão:
Como funciona a permissão baseada em 4 digitos? Li em uma materia sobre isso mas não explicou. Poderia acrescentar
ResponderEliminarObrigado por essa dica. Isso ajuda a tornar este blog mais rico em termos de conteúdo. Depois farei um post sobre isso, onde falarei do sticky bit.
Eliminar