PermissõesAs permissões dos arquivos são definidas através dos comandos chmod, chown e chgrp.
Estrutura do comando:
chmod
Ao listar as informações de um arquivo ou diretório, o formato é o seguinte: drwxrwxrwx.
Respectivamente: diretório (d), permissão do dono (read/write/execute), do grupo (read/write/execute) e de outros (read/write/execute).
Por exemplo, para transformar um arquivo em executável:
- chmod +x nome_do_arquivo (executável para todos)
- chmod g+x nome_do_arquivo (executável para o grupo)
Para alterar o usuário e o grupo de um arquivo ou diretório:
- chown root.root /sbin/firewall.sh (-R: recursivamente)
Outros exemplos:
- chmod 755 (executável): -rwxr-xr-x
- chmod 4700 (suid) set user id para programas que precisam rodar com permissão de root: -rws------
Para calcular o valor numérico das permissões, basta considerar o valor do executavel como 1, de escrita como 2 e de leitura como 4, que seria o equivalente decimal aos bits:
rwx = 111 (todos bits ligados) = 2**2 + 2**1 + 2**0 = 7
Dessa forma, uma permissao de leitura e escrita (4+2) para o owner, e de leitura apenas para os outros teria o valor 644. Para calcular a
umask, que seria a máscara de permissão aplicada na criação de um novo arquivo, basta então subtrair 666 (ou 777 para diretórios) resultando em umask 022.