Aluizio Developer

Aula 08 - Gerenciamento de Permissões de Arquivos e Diretórios

Nesta aula iremos entender como funciona o sistema de permissões do Linux, suas peculiaridades...

Aluizio Developer

Gerenciamento de Permissões de Arquivos e Diretórios

O gerenciamento de permissões permite ao administrador do sistema definir políticas para acesso dos usuários e grupos aos arquivos, diretórios e programas executáveis do sistema.

O princípio da segurança no sistema de arquivos GNU/Linux é definir o acesso aos arquivos por donos, grupos e outros usuários:

dono - É a pessoa que criou o arquivo ou o diretório. Somente o dono pode modificar as permissões de acesso do arquivo. As permissões de acesso do dono de um arquivo somente se aplicam ao dono do arquivo/diretório. A identificação do dono também é chamada de user id (UID).

Permissoes

A identificação de usuário e o nome do grupo que pertence são armazenadas respectivamente nos arquivos /etc/passwd e /etc/group.

grupo - Para permitir que vários usuários diferentes tenham acesso a um mesmo arquivo. Cada usuário pode fazer parte de um ou mais grupos e então acessar arquivos que pertençam ao mesmo grupo que o seu (mesmo que estes arquivos tenham outro dono). Por padrão, quando um novo usuário é criado, o grupo que ele pertencerá será o seu grupo primário. A identificação do grupo é chamada de group id (GID).

outros - É a categoria de usuários que não são donos ou não pertencem ao grupo do arquivo. Cada um dos tipos acima possuem três tipos básicos de permissões de acesso que serão vistas adiante.

Permissões básicas:

r - Permissão de leitura para arquivos. Caso for um diretório, permite listar seu conteúdo (através do comando ls, por exemplo).

w - Permissão de gravação para arquivos. Caso for um diretório, permite a gravação de arquivos ou outros diretórios dentro dele. Para que um arquivo/diretório possa ser apagado, é necessário o acesso a gravação.

x - Permite executar um arquivo (caso seja um programa executável). Caso seja um diretório, permite que seja acessado através do comando cd.

Para visualizar as permissões de arquivos e diretórios use o comando ls -l.

Normalmente utilizamos a tabela abaixo para definirmos as permissões:

4 - leitura

2 - gravação

1 - execução

Executando o comando ls -l, teremos uma lista de arquivos, com a exibição de todo o esquema de permissões. Temos as permissões exibidas nos dez caracteres exibidos na primeira coluna da saída do comando. O primeiro caracter representa o tipo de arquivo. As nove posições seguintes representam as chaves de permissão. Os principais tipos de arquivos são:

- (traço) - Arquivos comuns.

d - Diretórios/pastas.

l - Links simbólicos.

c - Dispositivos de caracteres.

b - Dispositivos de blocos.

s - Soquetes.

chmod

Comando utilizado para alterar as permissões de um arquivo/diretório. O chmod também aceita a representação das permissões através de letras, conforme mostrado abaixo:

u - Refere-se as permissões para o dono.

g - Refere-se as permissões para o grupo.

o - Refere-se as permissões para o outros.

a - Refere-se as permissões para todos os usuários.

O sinal “+” indica adição de permissão às permissões já existentes.

O sinal “–” indica remoção de permissão das permissões já existentes.

O sinal “=” indica substituição das permissões existentes pelas indicadas após o sinal.

Exemplos:

chmod 755 aula05.txt

chmod u=rwx,go=rx aula05.txt

chmod g+w aula05.txt

chown

Muda o dono de um arquivo/diretório. Opcionalmente pode também ser usado para mudar o grupo. Sintaxe:

chown -[opções] [dono.grupo] [diretório/arquivo]

opção:

R - Muda o dono de todos os arquivos e diretórios recursivamente dentro da hieraquia.

Exemplos:

chown torvalds.desenv aula05.txt

chown antonio leiame.txt

chown .pesquisa aula05.txt

chgrp

Utilizado para mudar apenas o grupo de um arquivo/diretório. Sintaxe:

chgrp -[opções] [grupo] [diretório/arquivo]

opção:

R - Muda o grupo de todos os arquivos e diretórios recursivamente dentro da hieraquia.

Exemplo:

# chgrp -R desenv /home/torvalds

Comentários