Os sistemas operacionais Unix e Linux atribuem direitos de acesso a arquivos e diretórios usando um dos três tipos de acesso (leitura, gravação e execução) atribuídos a cada um dos três grupos (proprietário, grupo e outros usuários).
Se você listar detalhes dos atributos de um arquivo usando o ls comando com o -eu interruptor (por exemplo ls -l nome do arquivo ), retornaria informações que seriam algo como -rwe-rw-r-- o que equivale a ler, escrever e executar privilégios para o proprietário, ler e escrever privilégios para o grupo e somente acesso de leitura para todos os outros usuários.
Cada um dos tipos de direitos de acesso tem um valor numérico associado listado abaixo:
- Leitura = 4
- Escreva = 2
- Execute = 1
Os valores dos direitos de acesso para cada um dos grupos são somados para obter um valor entre 0 e 7, que pode ser usado para atribuir ou modificar permissões usando o chmod (modo de mudança).
No exemplo acima, os direitos de acesso para o arquivo em questão podem ser atribuídos inserindo-se chmod 764 nome do arquivo . O número 764 é derivado de:
- rwe = 4 (ler) + 2 (escrever) + 1 (executar) = 7
- rw = 4 (leitura) + 2 (escrita) = 6
- r = 4 (leitura) = 4
Você pode usar o chmod comando para designar direitos de acesso a arquivos e diretórios. Lembre-se de que os comandos e nomes de objetos Unix e Linux fazem distinção entre maiúsculas e minúsculas. Você deve usar "chmod"e não CHMod ou qualquer outra combinação de letras maiúsculas e minúsculas.
Como usar o comando chmod:
- Acesso total para todos: chmod 777 nome do arquivo
- Acesso total para privilégios de proprietário e grupo, mas outros usuários só podem ler e executar: chmod 775 nome do arquivo
- Acesso total para o proprietário, mas restringindo privilégios de grupo e outros privilégios de usuário para somente ler e executar arquivos no diretório: chmod 755 dirname
- Acesso total para o proprietário sem direitos de acesso ou privilégios para mais ninguém: chmod 700 nome do arquivo
- Nenhum acesso a arquivos no diretório para grupo ou outros usuários e proprietário restrito a ler e executar privilégios para evitar a exclusão ou modificação acidental de arquivos no diretório: chmod 500 dirname
- Permitir que o proprietário e o grupo leiam e gravem acesso a um arquivo, permitindo que outras pessoas do grupo editem ou excluam o arquivo, bem como o proprietário, mas sem acesso para outros usuários: chmod 660 nome do arquivo