De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Permissões e Tipos de Arquivos no Linux

Colaboração: Jonas Roberto de Goes Filho

Data de Publicação: 24 de Dezembro de 2006

Cada arquivo no Linux possui permissões de acesso para usuários e grupos do sistema. Cada arquivo possui um conjunto de permissões associadas a ele. As permissões de acesso permitem que o administrador do sistema especifique, em cada arquivo, o que cada usuário, grupo ou o próprio sistema pode fazer.

Há três tipos básicos de permissões:

  1. (r) Leitura
  2. (w) Escrita
  3. (x) Execução

Quando não houver no arquivo quaisquer das três permissões básicas acima citadas, então o símbolo de representação será um sinal de menos (-).

As permissões são definidas em todos os arquivos para três tipos de usuários:

  1. Dono do arquivo
  2. Um Grupo de Usuários (o dono do arquivo não necessariamente precisa estar neste grupo)
  3. Quaisquer outros usuários excluindo o dono do arquivo

A notação de permissões é representada por 10 caracteres. São eles:

  • O caractere da posição 1 representa o tipo de arquivo.
  • Os caracteres das posições 2, 3 e 4 representam as permissões de acesso para o dono do arquivo.
  • Os caracteres das posições 5, 6 e 7 representam as permissões de acesso para um grupo no arquivo.
  • Os caracteres das posições 8, 9 e 10 representam as permissões de acesso para quaisquer outros usuários, excluindo o dono do arquivo.

Representação Numérica para Permissões Básicas

Dígito Octal Notação Valor Binário
0 --- 000
1 --x 001
2 -w- 010
3 -wx 011
4 r-- 100
5 r-x 101
6 rw- 110
7 rwx 111

Diferença de Permissões de Acesso entre Arquivos e Diretórios

Tipo de Acesso: Leitura

  • Arquivo: Especifica se o conteúdo do arquivo pode ser acessado/lido/obtido ou não.
  • Diretório: Especifica se o conteúdo do diretório pode ser listado ou não.

Tipo de Acesso: Escrita

  • Arquivo: Especifica se o conteúdo do arquivo pode ser modificado ou não.
  • Diretório: Especifica se o conteúdo do diretório pode ser modificado ou não. Ou seja, permite ou não criar ou deletar arquivos e diretórios dentro do diretório.

Tipo de Acesso: Execução

  • Arquivo: Especifica se o arquivo pode ser executado.
  • Diretório: Especifica se o diretório pode ser acessado ou não.

Permissões Especiais

SUID: Quando ativo, mantém as mesmas permissões do dono do arquivo quando este arquivo estiver em execução. Em diretórios não tem efeito.

SGID: Quando ativo, mantém as mesmas permissões do grupo do arquivo quando este arquivo estiver em execução. Em diretórios, força o grupo de novos arquivos e diretórios criados dentro dele para o mesmo grupo.

StickBit: Em arquivos, salva uma imagem do programa no dispositivo swap para ser carregado mais rapidamente. Em diretórios, para alterar ou remover um arquivo, será obrigatóriamente necessário ser o dono do arquivo ou o dono do diretório com o stick ativado.

Representação Numérica para Permissões Especiais

Dígito Octal Valor Binário
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

SUID: se ativo, na posição 4, é colocado um (s) no lugar de (x), se (x) estiver ativo. Se (x) não estiver ativo, é colocado um (S) no lugar de (-).

Se ativo, é trocado:
"x" por "s" e "-" por "S"

SGID: se ativo, na posição 7, é colocado um (s) no lugar de (x), se (x) estiver ativo. Se (x) não estiver ativo, é colocado um (S) no lugar de (-).

Se ativo, é trocado:
"x" por "s" e "-" por "S"

Stick: se ativo, na posição 10, é colocado um (t) no lugar de (x), se (x) estiver ativo. Se (x) não estiver ativo, é colocado um (T) no lugar de (-).

Se ativo, é trocado:
"x" por "t" e "-" por "T"

Permissões Padrão

As permissões padrão são definidas por uma máscara. O valor de umask é o responsável por configurar as permissões corretas quando um arquivo novo é criado no sistema.

Tipos de Arquivos

Símbolo Descrição
- Arquivo regular
d Diretório
l Link
c Dispositivo de caractere
u Dispositivo de caractere sem buffer
s Arquivo Socket
p FIFO, Named Pipe
b Dispositivo de bloco

FIFO - Sigla para First In, First Out, que em inglês significa primeiro a entrar, primeiro a sair. São amplamente utilizados para implementar filas de espera. Os elementos vão sendo colocados no final da fila e retirados por ordem de chegada. Pipes (|) são um exemplo de implementação de FIFO.

Buffer - É uma região de memória temporária, usada para escrita e leitura de dados. Normalmente, os buffers são utilizados quando existe uma diferença entre a taxa em que os dados são recebidos e a taxa em que eles podem ser processados.

Socket - É um meio de comunicação por software entre um computador e outro. É uma combinação de um endereço IP, um protocolo e um número de porta do protocolo.

Arquivos Sockets mais comuns:

/dev/printer    socket     socket local para lpd
/dev/log        socket     socket local para syslog
/dev/gpmdata    socket     multiplexador gpm de mouse

$ sudo apt-get install tcputils
$ sudo tcplisten porta
$ sudo tcpconnect host porta

Executar é realizar algo - fazer algo. Quando damos permissão de execução a um arquivo, permitimos que se faça tudo o que está especificado dentro deste arquivo, em ordem, desde o primeiro passo até o último passo.

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Jonas Roberto de Goes Filho