Prontos para mais uma rubrica “Comandos Linux para Totós“? Bem, depois de termos explicado o output de um “ls –l” e de termos explicado o sistema de permissões no Linux é hora de avançarmos para a prática e aprender como definir permissões para um ficheiro.
Vamos a mais uma viagem no “terminal preto”? Lets go…777!
Ainda relembrando o último artigo desta rubrica (ver aqui) e para aqueles quem atribuíam a permissão 777 sem saber porquê, acho que agora já dá para perceber quais as implicações 🙂
Bem, vamos então ao que interessa. Tal como referiram alguns dos nossos leitores nos comentários do ultimo artigo desta rubrica, para definir as permissões de um ficheiro utiliza-se o comando chmod. As permissões podem ser definidas num dos seguintes modos: “amigável” ou “máscara binária (ou modo octal)”
Modo: “amigável” (com letras)
Para a definição de permissões através do modo “amigável” é necessário recorrer a letras e mais alguns símbolos. Para isso, produzi uma tabela auxiliar com tudo o que precisam de saber. Por exemplo, a letra ‘u’ indica que é dono, ‘g’ refere-se ao grupo, etc. Depois temos as permissões de leitura, escrita e execução que são definidas através das letras r,w e x respectivamente. Depois há os operadores que nos permitem definir uma permissão (‘+’) ou remover uma permissão (‘-).
Criem o ficheiro pplware através do comando touch, e depois experimentam mudar-lhe as permissões. Para ver as permissões do ficheiro podem usar o comando ls –l pplware
- chmod u+rw pplware – dá permissões ‘r/w’(leitura e escrita) ao dono do ficheiro
- chmod o‐rwx pplware – retira todas as permissões aos “outros”
- chmod a+rw pplware – dá permissões ‘r/w’ a todos (ugo)
- chmod go‐r pplware – retira a permissão ‘r’(leitura) ao grupo e outros
Modo: Máscara binária ou modo octal
A máscara binária é composta por três algarismos arábicos sob a base 8 ou seja de 0 a 7 (daí o nome de modo octal) onde:
- O primeiro dígito representa o dono do ficheiro (u)
- O segundo dígito representa o grupo (g)
- O terceiro dígito representa os outros (o)
As permissões são especificadas para cada grupo, somando as permissões necessárias:
- 4 = Leitura (r)
- 2 = Escrita (w)
- 1 = Execução (x)
Relativamente à máscara binária, criei duas tabelas auxiliares:
Vamos considerar então que pretendemos dar ao ficheiro pplware a permissão de leitura(4), escrita (2) e execução (1) para o dono do ficheiro, leitura (4) ao grupo e leitura (4) aos outros. Ora somando os “pesos” para o dono temos 4+2+1=7, relativamente ao grupo temos apenas 4 e o mesmo acontece para os outros. Então, a permissão a atribuir seria 744. Percebido? Numa primeira fase parece confuso, mas depois torna-se um sistema bastante simples. Vamos a mais alguns exemplos:
- chmod 600 pplware > permissões ‘rw‐‐‐‐‐‐‐’
- chmod 755 pplware > permissões ‘rwxr‐xr‐x’
- chmod 777 pplware > permissões ‘rwxrwxrwx’
Resumindo, modo amigável usamos letras e na máscara binária usamos um conjunto de três dígitos. Como dica final deixo-vos o comando stat. Experimentem usar da seguinte forma: stat pplware e depois analisam a informação presente no campo Access.
Estão abertos os comentários do artigo a nível de leitura e escrita > chmod 666 🙂
Artigos relacionados