Linux

Compreendendo as permissões de arquivo do Linux

Compreendendo as permissões de arquivo do Linux

No Linux, as permissões de arquivo, atributos e propriedade controlam o nível de acesso que os processos do sistema e usuários têm aos arquivos. Isso garante que apenas usuários e processos autorizados possam acessar arquivos e diretórios específicos.

Número de permissões de arquivo do Linux

O modelo de permissões básicas do Linux funciona associando cada arquivo do sistema a um proprietário e um grupo e atribuindo direitos de permissão de acesso para três classes diferentes de usuários:

A propriedade do arquivo pode ser alterada usando o chown e chgrp comandos.

Três tipos de permissões de arquivo se aplicam a cada classe de usuários:

Este conceito permite que você controle quais usuários podem ler o arquivo, gravar no arquivo ou executar o arquivo.

Para ver as permissões do arquivo, use o ls comando:

ls -l file_name
-rw-r - r-- 12 usuários do Linux 12.0K 28 de abril 10:10 file_name | [-] [-] [-] - [------] [---] | | | | | | | | | | | | | + -----------> 7. Grupo | | | | | + -------------------> 6. Proprietário | | | | + --------------------------> 5. Método de acesso alternativo | | | + ----------------------------> 4. Outras Permissões | | + -------------------------------> 3. Permissões do grupo | + ----------------------------------> 2. Permissões do proprietário + ------------------------------------> 1. Tipo de arquivo 

O primeiro caractere indica o tipo de arquivo. Pode ser um arquivo normal (-), diretório (d), um link simbólico (eu) ou outros tipos especiais de arquivos. Os nove caracteres a seguir representam as permissões de arquivo, três trigêmeos de três caracteres cada. O primeiro tripleto mostra as permissões do proprietário, o segundo as permissões do grupo e o último tripleto mostra as permissões de todos os outros.

No exemplo acima (rw-r - r--) significa que o proprietário do arquivo tem permissões de leitura e gravação (rw-), o grupo e outros têm apenas permissões de leitura (r--).

As permissões de arquivo têm um significado diferente dependendo do tipo de arquivo.

Cada um dos três trigêmeos de permissão pode ser construído com os seguintes caracteres e ter efeitos diferentes, dependendo se eles estão configurados para um arquivo ou para um diretório:

Efeito das permissões nos arquivos

PermissãoPersonagemSignificado no arquivo
Leitura-O arquivo não é legível. Você não pode ver o conteúdo do arquivo.
rO arquivo é legível.
Escreva-O arquivo não pode ser alterado ou modificado.
CO arquivo pode ser alterado ou modificado.
Executar-O arquivo não pode ser executado.
xO arquivo pode ser executado.
sSe encontrado no do utilizador trigêmeo, ele define o setuid pedaço. Se encontrado no grupo trigêmeo, ele define o setgid pedaço. Também significa que x bandeira está definida.
Quando o setuid ou setgid sinalizadores são definidos em um arquivo executável, o arquivo é executado com o proprietário do arquivo e / ou privilégios de grupo.
SIgual a s, mas o x bandeira não está definida. Este sinalizador raramente é usado em arquivos.
tSe encontrado no outras trigêmeo, ele define o pegajoso pedaço.
Também significa que x bandeira está definida. Este sinalizador é inútil em arquivos.
TIgual a, t mas o x bandeira não está definida. Este sinalizador é inútil em arquivos.

Efeito das permissões em diretórios (pastas)

Os diretórios são tipos especiais de arquivos que podem conter outros arquivos e diretórios.

PermissãoPersonagemSignificado no diretório
Leitura-O conteúdo do diretório não pode ser mostrado.
rO conteúdo do diretório pode ser mostrado.
(e.g., Você pode listar arquivos dentro do diretório com ls.)
Escreva-O conteúdo do diretório não pode ser alterado.
CO conteúdo do diretório pode ser alterado.
(e.g., Você pode criar novos arquivos, deletar arquivos ... etc.)
Executar-O diretório não pode ser alterado para.
xO diretório pode ser navegado usando CD.
sSe encontrado no do utilizador trigêmeo, ele define o setuid pedaço. Se encontrado no grupo trigêmeo define o setgid pedaço. Também significa que x bandeira está definida. Quando o setgid sinalizador é definido em um diretório, os novos arquivos criados dentro dele herdam o ID do grupo de diretório (GID) em vez do ID do grupo primário do usuário que criou o arquivo.
setuid não tem efeito nos diretórios.
SIgual a s, mas o x bandeira não está definida. Este sinalizador é inútil em diretórios.
tSe encontrado no outras trigêmeo, ele define o pegajoso pedaço.
Também significa que x bandeira está definida. Quando o sticky bit é definido em um diretório, apenas o proprietário do arquivo, o proprietário do diretório ou o usuário administrativo podem excluir ou renomear os arquivos dentro do diretório.
TIgual a t, mas o x bandeira não está definida. Este sinalizador é inútil em diretórios.

Alterando as permissões do arquivo #

As permissões de arquivo podem ser alteradas usando o chmod comando. Apenas o root, o proprietário do arquivo ou usuário com privilégios sudo pode alterar as permissões de um arquivo. Tenha muito cuidado ao usar chmod, especialmente ao alterar recursivamente as permissões. O comando pode aceitar um ou mais arquivos e / ou diretórios separados por espaço como argumentos.

As permissões podem ser especificadas usando um modo simbólico, modo numérico ou um arquivo de referência.

Método Simbólico (Texto) #

A sintaxe do chmod comando ao usar o modo simbólico tem o seguinte formato:

chmod [OPÇÕES] [ugoa…] [- + =] perms… [,…] ARQUIVO… 

O primeiro conjunto de sinalizadores ([ugoa…]), sinalizadores de usuários, define as classes de usuários para as quais as permissões para o arquivo são alteradas.

Quando o sinalizador do usuário é omitido, o padrão é uma.

O segundo conjunto de sinalizadores ([- + =]), os sinalizadores de operação, define se as permissões devem ser removidas, adicionadas ou definidas:

As permissões (permanentes .. ) são explicitamente definidos usando zero ou uma ou mais das seguintes letras: r, C, x, X, s, e t. Use uma única letra do conjunto você, g, e o ao copiar permissões de uma para outra classe de usuários.

Ao definir permissões para mais de uma classe de usuário ([,…]), use vírgulas (sem espaços) para separar os modos simbólicos.

Aqui estão alguns exemplos de como usar o chmod comando em modo simbólico:

Método Numérico #

A sintaxe do chmod comando ao usar o modo simbólico tem o seguinte formato:

chmod [OPÇÕES] NÚMERO ARQUIVO… 

Ao usar o modo numérico, você pode definir as permissões para todas as três classes de usuário (proprietário, grupo e todas as outras) ao mesmo tempo.

O número de permissão pode ser um número de 3 ou 4 dígitos. Quando um número de 3 dígitos é usado, o primeiro dígito representa as permissões do proprietário do arquivo, o segundo o grupo do arquivo e o último todos os outros usuários.

Cada permissão de gravação, leitura e execução tem o seguinte valor numérico:

O número de permissões de uma classe de usuário específica é representado pela soma dos valores das permissões para esse grupo.

Para descobrir as permissões do arquivo no modo numérico, basta calcular os totais para todas as classes de usuários. Por exemplo, para dar permissão de leitura, gravação e execução ao proprietário do arquivo, permissões de leitura e execução ao grupo do arquivo e apenas permissões de leitura a todos os outros usuários, você faria o seguinte:

Usando o método acima, chegamos ao número 754, que representa as permissões desejadas.

Para configurar o setuid, setgid, e pedaço pegajoso sinalizadores, use um número de quatro dígitos.

Quando o número de 4 dígitos é usado, o primeiro dígito tem o seguinte significado:

Os próximos três dígitos têm o mesmo significado que ao usar um número de 3 dígitos.

Se o primeiro dígito for 0, ele pode ser omitido e o modo pode ser representado com 3 dígitos. O modo numérico 0755 é o mesmo que 755.

Para calcular o modo numérico, você também pode usar outro método (método binário), mas é um pouco mais complicado. Saber como calcular o modo numérico usando 4, 2 e 1 é suficiente para a maioria dos usuários.

Você pode verificar as permissões do arquivo na notação numérica usando o Estado comando:

stat -c "% a" file_name 

Aqui estão alguns exemplos de como usar o chmod comando no modo numérico:

Conclusão #

No Linux, o acesso aos arquivos é restrito usando permissões de arquivo, atributos e propriedade. Para alterar as permissões do arquivo, use o chmod comando.

Se você tiver alguma dúvida ou feedback, fique à vontade para deixar um comentário.

Como usar o Xdotool para estimular cliques do mouse e pressionamentos de tecla no Linux
Xdotool é uma ferramenta de linha de comando gratuita e de código aberto para simular cliques do mouse e pressionamentos de tecla. Este artigo irá cob...
Os 5 principais produtos ergonômicos de mouse de computador para Linux
O uso prolongado do computador causa dor no pulso ou nos dedos? Você está sofrendo de rigidez nas articulações e constantemente precisa apertar as mão...
Como alterar as configurações do mouse e touchpad usando Xinput no Linux
A maioria das distribuições Linux vem com a biblioteca “libinput” por padrão para lidar com eventos de entrada em um sistema. Ele pode processar event...