Permissões de acesso a arquivos e pastas pelo Terminal no Linux
Permissões de acesso a arquivos e pastas no Linux
Usamos permissões no Linux para definir quem pode acessar arquivos e diretórios, e seu nível de acesso, que vai desde acesso total até permissão totalmente negada. Para estudarmos como funcionam as permissões de acesso a arquivos e pastas no Linux, vamos executar o comando ls -l em meu diretório padrão para ver primeiramente como o Linux exibe as premissões no terminal: $ ls -l
Saída do comando ls -l:
drwxr-xr-x 2 fabio fabio 4096 Fev 12 11:51 Música
Nesta linha, as informações são organizadas em colunas, e cada coluna representa as informações como segue (da esquerda para a direita):
d = tipo do arquivo (é um diretório) rwxr-xr-x = permissões de acesso ao arquivo 2 = núm. de links para o arquivo ("atalhos") fabio = usuário proprietário do arquivo fabio = grupo do arquivo 4096 = tamanho do arquivo em bytes Fev = mês da última modificação 12 = dia da última modificação 11:51 = horário da última modificação Música = nome do arquivo ou diretório
Quando um usuário cria um arquivo, esse usuário será o proprietário (owner) desse arquivo, e o arquivo será vinculado ao grupo padrão do usuário proprietário.
Os tipos de arquivos mais comuns são:
Código
Tipo de arquivo
-
Arquivo normal de dados, como texto, imagens, vídeos, programas executáveis, arquivos zipados, etc.
d
Diretório. Os diretórios são arquivos também, porém contendo nomes de arquivos e ponteiros para inodes do disco.
l
Link simbólico (symlink) - um arquivo que aponta para um outro arquivo ou diretório
p
Pipe nomeado. Um pipe permite que dois programas em execução se comuniquem entre si, escreverndo e lendo dados no pipe.
s
Socket. Um socket é parecido com um pipe nomeado, porém é usado em comunicações de rede.
b
Dispositivo de bloco, o qual é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em blocos de bytes.
c
Dispositivo de caractere, que é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em unidades de um byte.
Esquema de Permissões No arquivo visto acima, o esquema de permissões é representado pela sequência de caracteres rwxr-xr-x Essa sequência é dividida em três conjuntos de três caracteres, cada conjunto simbolizando um nível de permissão de acesso específico. Os três conjuntos são (da esquerda para a direita): - usuário proprietário - grupo do arquivo - outros (demais usuários e grupos) Ou seja:
d
r
w
x
r
-
x
r
-
x
Tipo
Permissões do usuário proprietário
Permissões do grupo do arquivo
Permissões dos demais usuários - outros
No exemplo acima, rwx simboliza a permissão do proprietário do arquivo; r-x simboliza a permissão dos membros do grupo do arquivo; r-x é a permissão dos outros - demais usuários.
Significado das permissões As permissões possuem o seguinte significado: r = Read (leitura) w = Write (gravação) x = eXecute (execução) - = Sem permissão
As permissões são sempre aplicadas na mesma ordem, que é Leitura - Escrita - Execução (rwx). Assim: rwx = permissão total (leitura, escrita e execução) rw- = permissão de leitura e escrita (sem execução) r-x = permissão de ler e executar (scripts e diretórios) r-- = permissão somente-leitura --- = permissão totalmente negada
Esses conjuntos de permissões são configurados para o proprietário do arquivo, grupo e outros, nessa ordem.
Também podemos atribuir valores numéricos às permissões pois alguns comandos usam esses valores numéricos para permitir o gerenciamento das permissões. Os valores numéricos são os seguintes: r = 4 w = 2 x = 1 - = 0
Esses valores são extraídos da tabela abaixo, que mostra os valores binários (bits) de cada permissão quando seus bits estão ativados:
r
w
x
Permissão
Valor octal
0
0
0
Sem permissão
0
0
0
1
Execução
1
0
1
0
Gravação
2
0
1
1
Gravação e Execução
3
1
0
0
Leitura
4
1
0
1
Leitura e execução
5
1
1
0
Leitura e gravação
6
1
1
1
Permissão total
7
Esse esquema de atribuição de valores às permissões é chamado de Modo Octal (oito combinações possíveis, de 0 a 7), e usado pelo comando chmod. Por exemplo, atribuímos o valor 7 quando queremos dar permissão total, valor 4 para somente leitura, valor 3 para escrita e execução, e assim por diante. Cada número substitui um conjunto de três caracteres. Assim, podemos representar todas as permissões de um arquivo com apenas três números (um para proprietário, um para grupo e um para outros). No exemplo de arquivo vista acima, a permissão completa rwxr-xr-x pode ser substituída pelos números 755 nos comandos.
Podemos mudar o proprietário e o grupo de um arquivo com os comandos chown e chgrp, respectivamente. Para aprender a alterar proprietário e grupo de um arquivo, consulte o link a seguir: http://www.planetaunix.com.br/2014/08/alterar-proprietario-e-grupo-de.html
E assista no vídeo abaixo a explicação sobre as permissões de acesso a arquivos no Linux:
- Sticky Bit - Permissões Especiais No Linux 02
Sticky Bit - Permissões especiais no Linux Vamos explorar neste vídeo a configuração do Sticky bit, que é uma permissão de acesso que pode ser atribuída a arquivos e diretórios no Linux. Geralmente aplicamos o sticky bit a diretórios, de modo...
- Acl - Access Control List - Ajustando Permissões Avançadas No Linux
ACL - Access Control List - Ajustando permissões avançadas no Linux As ACLs (Access Control Lists) nos fornecem um controle mais refinado sobre quais usuários podem acessar diretórios e arquivos específicos do que as permissões tradicionais do...
- O Arquivo /etc/group - Gerenciando Grupos No Sistema Linux
Por Fábio dos Reis O arquivo /etc/group é um arquivo de sistema que define os grupos aos quais os usuários pertencem em sistemas UNIX, como o Linux e o BSD.Usamos os grupos para configurar permissões de acesso a arquivos e pastas aos usuários do...
- Alterar Proprietário E Grupo De Arquivos - Comandos Chown E Chgrp
A segurança em sistemas Linux (e Unix em geral) é constituída a partir dos conceitos de propriedade dos arquivos e de permissões de arquivos. Neste artigo estudaremos a posse dos arquivos, falando sobre Proprietário e Grupo de um arquivo. Cada arquivo...
- Criando E Manipulando Diretórios: Comandos Mkdir, Rmdir E Rm -r
Uma das tarefas mais importantes na administração de um sistema Linux é a criação e manutenção de diretórios (pastas), que aparecem para os usuários como contêineres para organizar os arquivos do sistema e armazenar seus dados, por exemplo.Nos...