Linux - Permissões
Projeto de pesquisa: Linux - Permissões. Pesquise 862.000+ trabalhos acadêmicosPor: lhauptli1973 • 30/4/2014 • Projeto de pesquisa • 1.522 Palavras (7 Páginas) • 305 Visualizações
Permissões no Linux
Introdução
As permissões são um dos aspectos mais importantes do Linux (na verdade, de todos os sistemas baseados em Unix). Elas são usadas para vários fins, mas servem principalmente para proteger o sistema e os arquivos dos usuários. Manipular as permissões é algo muito interessante, tanto quanto complexo. Mas tal complexidade não deve ser interpretada como dificuldade e sim como grande variedade de configurações, o que permite criar vários tipos de proteção de arquivos e diretórios.
Como você deve saber, somente o super-usuário (root) tem ações irrestritas no sistema, justamente por ser o usuário responsável pela configuração, administração e manutenção do Linux. Cabe a ele por exemplo, determinar o que cada usuário pode executar, criar, modificar, etc. Naturalmente, a forma usada para determinar o que o usuário pode fazer é a determinação de permissões. Este artigo visa explicar as configurações de permissões de arquivos e diretórios, assim como modificá-las.
Entendendo as permissões
drwx------ ... 2 wester ............. 512 Jan ... 29 23:30 .. Arquivos/
-rw-rw-r-- ... 1 wester ....... 280232 Dec .. 16 22:41... notas.txt
As linhas acima representam um comando digitado (ls -l) para listar um diretório e suas permissões. O primeiro item que aparece na linha (drwx----- e -rw-rw-r-) é a forma usada para mostrar as permissões que o diretório Arquivos e o arquivo notas.txt têm. É esse item, que recebe o nome de string, que vamos estudar. Um ponto interessante de citar é que o Linux trata todos os diretórios como arquivo também, portanto, as permissões se aplicam de igual forma para ambos. Tais permissões podem ser divididas em quatro partes para indicar: tipo, proprietário, grupo e outras permissões. O primeiro caractere da string indica o tipo de arquivo: se for "d" representa um diretório, se for "-" equivale a um arquivo. Entretanto, outros caracteres podem aparecer, já que existem outros tipos de arquivo no Linux, conforme mostra a tabela abaixo:
d => diretório
b => arquivo de bloco
c => arquivo especial de caractere
p => canal
s => socket
- => arquivo normal
Repare agora que no restante da string temos 9 caracteres. Você já sabe o que significa o primeiro. Os demais são em 3 grupos de 3, cada um representado o proprietário, o grupo e todos os demais respectivamente. Pegando a linha 2 do exemplo (-rw-rw-r-) e dividindo a string em 3 partes, ficaria assim:
-rw => indicação de permissões do proprietário
-rw => permissões do grupo que o usuário pertence
-r- => permissões para os demais usuários
Vamos entender agora o que significa esses caracteres (r, w, x, -). Existem 3 tipos básicos de permissões: leitura, gravação e execução. Leitura permite aos usuários ler o conteúdo do arquivo mas não altera-lo. Gravação permite que os usuários alterem o arquivo. Execução, como o nome diz, permite que o usuário execute o arquivo, no caso de ser executável. Mas acontece que as permissões não funcionam isoladamente, ou seja, ou o usuário tem permissão de leitura ou de gravação ou de execução. As permissões funcionam em conjunto. Isso quer dizer que cada arquivo/diretório tem as 3 permissões, cabendo ao dono determinar qual dessas permissões é habilitada para os usuários ou não. Pode ser que uma determinada quantidade de usuários tenha permissão para alterar um arquivo, mas outros não. Daí a necessidade de se usar grupos. Neste caso, a permissão de gravação desse arquivo será dada ao grupo e todo usuário membro dele poderá alterar o arquivo.
É necessário ter um certo cuidado com as permissões. Por exemplo, do que adianta o usuário ter permissão de gravação se ele não tem permissão de leitura habilitada? Ele poderá ler o arquivo para poder modifica-lo? Não! De certo, isso tem utilidade em arquivos de log. Fazendo associação com as letras r, w, x e o caractere -, vamos entender cada uma:
r => significa permissão de leitura (read);
w => significa permissão de gravação (write);
x => significa permissão de execução (execution);
- => significa permissão desabilitada.
A ordem em que as permissões devem aparecer é rwx. Sendo assim, vamos entender as strings do nosso exemplo, dividindo-a em 4 partes:
Linha 1:
drwx------. 2 wester..... 512 Jan ... 29 23:30 .. Arquivos/
é um diretório (d);
o proprietário pode altera-lo, grava-lo e executa-lo (rwx);
o grupo não pode altera-lo, grava-lo e nem executa-lo (---);
os demais usuários não podem altera-lo, grava-lo e nem executa-lo (---).
Linha 2:
-rw-rw-r-- ... 1 wester .......... 280232 Dec .. 16 22:41... notas.txt
é um arquivo (-);
o proprietário pode altera-lo, grava-lo, mas não executável. Como este arquivo não é executável, a permissão de execução aparece desabilitada (rw-);
o grupo tem permissões idênticas ao proprietário (rw-);
o usuário somente tem permissão de ler o arquivo, não pode altera-lo (r--)
A tabela abaixo mostra as permissões mais comuns:
--- => nenhuma permissão;
r-- => permissão de leitura;
r-x => leitura e execução;
rw- => leitura e gravação;
rwx => leitura, gravação e execução.
Configurando permissões com chmod
Acima, você dever tido pelo menos uma noção do que são permissões e sua importância no Linux. Chegou a hora de aprender a configurar permissões e isso é feito através do comando chmod (de change mode). Um detalhe interessante
...