Lições do módulo (1/2)
Gerenciando permissões (chmod)
No Linux, o acesso a arquivos e diretórios é regulado por um sistema de permissões. Cada arquivo/diretório pertence a um usuário proprietário e a um grupo de usuários.
As permissões são divididas em três categorias de destinatários:
- Usuário (u): O proprietário do arquivo.
- Grupo (g): Membros do grupo associado ao arquivo.
- Outros (o): Todos os outros usuários do sistema.
Para cada categoria, existem três tipos de ações permitidas ou negadas:
- Leitura (r): Visualize o conteúdo do arquivo ou liste o conteúdo do diretório.
- Write (w): Edite o arquivo ou crie/exclua arquivos em um diretório.
- Executar (x): Execute um arquivo (por exemplo, um script) ou insira um diretório.
Notação típica mostrada por ls -l: -rwxr-xr-x.
O primeiro caractere indica o tipo (por exemplo, - para arquivo, d para diretório), seguido por três trigêmeos para user, group e others.
Alterando permissões: chmod
O comando chmod (alterar modo) permite modificar as permissões do arquivo. Existem duas maneiras principais de especificá-los:
1. Modo Simbólico
Usa letras e operadores (+, -, =) para adicionar, remover ou definir permissões:
chmod u+x script.sh # Adds execute permission (x) to the owner (u)
chmod g-w file.txt # Removes write permission (w) from the group (g)
chmod a+r file.txt # Makes the file readable by everyone (all: u, g, o)2. Modo Octal (Numérico)
Usa três dígitos octais de 0 a 7, onde cada dígito representa a soma das permissões da categoria (r=4, w=2, x=1):
7=rwx(4 + 2 + 1)6=rw-(4 + 2)5=r-x(4 + 1)4=r--(4)0=---(sem permissões)
chmod 755 script.sh # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key # Owner: rw- (6), Group: --- (0), Others: --- (0)Experimente você mesmo
Exercício 1: Defina permissões padrão
Defina as permissões em 'script.sh' para que o proprietário possa ler, escrever e executar (rwx), enquanto o grupo e outros possam apenas ler e executar (rx). Use o modo octal.
Mostrar dica
O código octal para rwx é 7 (4+2+1) e para rx é 5 (4+1). Portanto, use chmod 755.
Solução disponível após 3 tentativas
Exercício 2: Proteja uma chave privada
Modifique as permissões do arquivo 'private.key' para torná-lo legível e gravável (rw-) apenas pelo proprietário, removendo todo o acesso do grupo e outros (---).
Mostrar dica
Use chmod com código octal 600 (proprietário tem 4+2, grupo 0, outros 0).
Solução disponível após 3 tentativas
Exercício 3: Torne um arquivo executável para todos
Torne o arquivo 'runner.sh' executável para todas as categorias de usuários usando o modo simbólico (a+x).
Mostrar dica
Use a sintaxe chmod a+x seguida do nome do arquivo.
Solução disponível após 3 tentativas