Tudo em
Linux é arquivo e todo arquivo precisa de três coisas: dono, grupo e permissões. Aqui nós veremos como funciona as permissões (rwx) e como alterá-las. Bem, vamos pegar um arquivo comum no Linux para o exemplo (/etc/fstab).
$ ls -la /etc/fstab
-r--r--r-- 1 root root 639 Mar 15 15:35 /etc/fstab
As permissões são os 10 primeiros caracteres desta linha. Sendo que o primeiro é apenas um caracter para informar se é um arquivo(-), um link(l), um diretorio(d)...
Agora a permissão:
r--r--r-- diz que todo mundo terá permissão de leitura.
As permissões são formadas da seguinte forma: os três primeiros caracteres dizem o que o dono pode fazer, as três seguintes o que pessoas do mesmo grupo podem fazer e as últimas três é para caso a pessoa não se enquadre nas outras duas anteriores. Os três últimos caracteres é para "outros".
Existem 3 tipos de permissões básicas:
- r -> Leitura
- w -> Escrita
- x -> Execução
Assim, lendo a permissão "r--r--r--" estamos dizendo que o dono poderá apenas ler, membros do mesmo grupo terão apenas acesso de leitura e outras pessoas poderão apenas ler ele.
Agora, a permissão "rwx--x-r--" diz que o dono terá acesso de leitura, escrita e execução. Pessoas do mesmo grupo poderão apenas executar e outras pessoas apenas ler.
Mudando Permissões
Para mudarmos as permissões de arquivos temos que usar o comando
chmod. Para que isso ocorra corretamente precisamos saber alguns parâmetros:
- u -> referente ao dono
- g -> referente ao grupo
- o -> referente a outros
- a -> referente a todos
Fora isso, a grosso modo, precisamos saber que "+" dá permissão e "-" tira. As permissões possíveis já foram citadas por isso vamos à exemplos:
$ chmod u=rwx,g=x,o=x teste
$ chmod a+rwx, g-rw, o-rw teste
$ chmod a+rwx, go-rw teste
Na primeira linha estamos dizendo que as permissões do dono devem ser totais, do grupo e outros apenas execução. Na segunda linha, damos permissões totais a todo mundo e, depois, retiramos as permissões de escrita e leitura do grupo e outros. E, na terceira linha, temos uma outra forma de fazer o que esta na segunda linha (não garanto que funcione). No final, as três linhas devem gerar a mesma permissão: rwx--x--x.