quinta-feira, 19 de fevereiro de 2015

Permissão de uma pasta com CHMOD

O comando chmod é um utilitário via linha de comando usado nos sistemas Linux/Unix/Unix-like para mudar as permissões de um arquivo ou diretório. 

Os parâmetros passados para o programa podem ser números ou letras. Nesta dica abordarei a passagem de parâmetros através de números octais. 

Exemplo: 


      chmod 750 arquivo.txt 


No exemplo acima aplicamos o comando chmod no arquivo arquivo.txt passando 750 como parâmetro. 


Explicação: 


O primeiro dígito do parâmetro refere-se às permissões para o dono do arquivo. O segundo, às permissões para os usuários do grupo do dono do arquivo e o terceiro, às permissões que os outros usuários do sistema têm para com o arquivo. 

Para entendermos melhor, veja a tabela abaixo: 

Quando utilizamos o número 0 significa que negamos determinada permissão. Quando utilizamos 1, significa que a aceitamos. 

Letras:

r -> read

w -> write

x - > execute

r w x

Numeros:

 0 = nenhuma permissão

1 = apenas execução

2 = apenas escrita

3 = escrita e execução

4 = apenas leitura

5 = leitura e execução

6 = leitura e escrita

7 = leitura, execução e escrita 

Portanto, no nosso exemplo, daríamos permissão de leitura, escrita e execução (7) para o dono do arquivo, permissão de leitura e execução (5) para os usuários do mesmo grupo do dono do arquivo e não daríamos nenhuma permissão para os outros usuários do sistema. 

Entendendo melhor: 

7 -> r=1 (ok, permissão de leitura.) w=1 (Ok, permissão de escrita), x=1 (Ok, permissão de execução) 

5 -> r=1 (ok, permissão de leitura), w=0 (permissão de escrita negada), x=1 (Ok, permissão de execução) 

0 -> não dá permissão nenhuma. 

No nosso exemplo, alteramos as permissões de apenas um arquivo. Mas se quiséssemos alterar as de um diretório todo, incluindo seus subdiretórios? Usamos então a opção -R. Exemplo: 

    chmod -R 755 /home/usuário/teste 

No exemplo acima alteramos as permissões do diretório teste e de tudo que havia contido nele. Para mudarmos as permissões de todos os arquivos contidos em determinado diretório, utilizamos o asterisco (*). 

Exemplo: 

     chmod 777 /home/usuário/pasta/* 

No exemplo anterior, alteramos as permissões de todos os arquivos contidos no diretório "pasta". Para visualizarmos as permissões dos arquivos de um diretório, utilizamos o comando "ls -l". 

Obs.: Para entender melhor como converter números binários em decimais e vice-versa, acesse o tutorial de conversão de números binários

Espero que tenham entendido. 

Abração.


nodes2015
original em:

0 comentários:

Postar um comentário