Abaixo, vamos explicar um pouco sobre estas permissões, como aplicá-las e quais comandos devemos usar para tal. Mas antes, beba um copo d’água que o artigo é comprido. =)
Os modos de permissão no Unix
# ls -l /
3 drwxr-xr-x 2 root root 3072 2008-01-29 10:13 bin
0 lrwxrwxrwx 1 root root 1024 2008-01-28 08:54 cdrom->media/cdrom
Observando, temos 3 classes de usuários que podem ter acesso aos arquivos:
- o dono (a pessoa que criou o arquivo),
- o grupo (usuários que são agrupados pelo administrador do sistema),
- e os outros (todos os usuários conectados a rede).
Os 10 primeiros caracteres das linhas listadas acimas pelo “ls -l” definem precisamente o que os usuários de cada classe podem fazer com seus arquivos. Esses caracteres são chamados de modos de permissão dos arquivos e se dividem em 4 grupos com 1, 3, 3 e 3 caracteres:
[1] [r][w][x] [r][w][x] [r][w][x]
| | | |
tipo dono grupo outros
O primeiro caracter define o tipo de arquivo que pode ser:
- “-” : significa um arquivo normal.
- “d” : significa um diretório.
- “l” : significa um ‘link’ simbólico.
Há outras possibilidades raramente utilizadas que são “b”, “c”, “p” ou “s”.
Os outros 9 caracteres devem ser separados em 3 grupos de 3 caracteres como o exemplo acima, sendo:
- o primeiro as permissões do dono do arquivo.
- o segundo as permissões do grupo de usuários.
- o terceiro as permissões de todos os outros usuários.
Em cada grupo, as permissões sempre aparecem na ordem:
- r = leitura.
- w = escrita-execução-deleção.
- x = execução.
OBS: A permissão de leitura é sempre indicada com um “r”. A permissão de escrita é sempre indicada com um “w”. A permissão de execução é sempre indicada com um “x”. Permissão negada é indicada com um “-”.
Exemplo:
# ls -l /
3 drwxr-xr-x 2 root root 3072 2008-01-29 10:13 bin
0 lrwxrwxrwx 1 root root 1024 2008-01-28 08:54 cdrom->media/cdrom
Observando o diretório “bin” temos as permissões drwxr-xr-x , que podemos interpretar como:
- tipo = d (diretório)
- dono = rwx (permissão total)
- grupo = r-x (permissão de leitura e execução, não pode gravar nem deletar)
- outros = r-x (permissão de leitura e execução, não pode gravar nem deletar)
OBS: Caso o tipo seja igual á “-” significa que é um arquivo comum.
O comando chmod
Vamos aprender de modo simples a usar as permissões que muitas vezes é bastante complicado.
Tendo em mente que o conceito de binário significa 0 = desligado e 1 = ligado, vejamos como fica na tabela abaixo:
rwx 0 - 000 1 - 001 2 - 010 3 - 011 4 - 100 5 - 101 6 - 110 7 - 111
Onde “rwx” são as permissões de um arquivo, ou seja:
- r=read (leitura)
- w=write (gravação, alteração, deleção)
- x=execute (execução)
Feito isso, sabemos que um arquivo ou diretório possui 3 modos de permissão. Uma permissão para o DONO do arquivo ou seja, quem o criou, uma outra permissão para o GRUPO do usuário dono do arquivo, e outra permissão para QUALQUER outro usuário ou grupo.
Sabendo disso, temos a tabela final abaixo:
dono grupo outros
rwx rwx rwx
0 - 000 000 000
1 - 001 001 001
2 - 010 010 010
3 - 011 011 011
4 - 100 100 100
5 - 101 101 101
6 - 110 110 110
7 - 111 111 111
Exemplo: Temos um diretório qualquer chamado mp3 que eu quero permissão total para o dono [eu], permissão de apenas leitura para o meu grupo e nenhuma permissão para o resto do mundo. O comando para executar essa ação é o CHMOD (em minúsculo mesmo).
$ chmod 740 /mp3
(acompanhem na tabela acima, que o 7=rwx, 4=r e 0=nada)
Porém, neste exemplo eu apliquei a permissão somente ao diretório, e não a todo o conteúdo dele. Para que todo o conteúdo, incluindo sub-diretórios, tenham a permissão que estou aplicando, usaremos o argumento recursivo:
$ chmod -R 740 /mp3
Lembra do “r”, “w” e do “x” falado acima? Também posso usar o chmod para aplicar permissões diretas a um arquivo ou diretório. Neste caso usaremos as letras:
$ chmod +x arquivo
Permite que ele seja executado por qualquer usuário
$ chmod +w arquivo
Permite que qualquer usuário possa escrever neste arquivo
$ chmod +rw arquivo
Permite que qualquer usuário possa ler e escrever neste arquivo
$ chmod -w arquivo
Desabilita a possibilidade de escrita no arquivo
E por ai vai…
Para mais informações, consulte a página de manual do comando chmod, abrindo um terminal e digitando
man chmod
O comando chown
chown – altera o dono e o grupo de um arquivo
A sintaxe básica do chown é a seguinte:
chown dono:grupo [arquivo ou diretório]
chown aluno:admin teste.txt
Viram? E se eu quisesse alterar o dono e o grupo do teste.txt para o root (dono root e grupo root)? Faria assim:
chown root:root teste.txt
ou simplesmente…
chown root: teste.txt
E se quiséssemos alterar o dono/grupo de um diretório? Podemos? Sim, claro. Porém devemos atentar que, se este diretório possuir sub-diretórios e eu quiser alterar o dono/grupo de tudo que está lá dentro, devo usar o argumento recurssivo, assim
chown -R root: pasta/
Para maiores informações, consulte a página de manual do comando chown, abrindo um terminal e digitando:
man chown
|
|
Quer continuar por dentro das novidades do Blog Seja Livre? Siga o nosso perfil no TWITTER, curta a nossa página no FACEBOOK ou adicione o Blog Seja Livre nos seus círculos do GOOGLE+. Se você usa ORKUT, nós também estamos lá, inclusive no IDENTI.CA e Linkedin.




























