Terminal, usuários e permissões
A base de tudo: navegar no shell com confiança, entender quem é quem no sistema e o que cada permissão realmente autoriza.
O que você vai aprender
- Comandos essenciais de diagnóstico do sistema
- Criar usuários e conceder acesso administrativo via grupo sudo
- Ler e interpretar permissões de arquivo (dono, grupo, outros)
- Por que evitar login direto como root em produção
1. Primeiro contato com o servidor
Antes de mexer em qualquer configuração, vale mapear onde você está: quem é o usuário atual, quais grupos ele pertence e informações básicas da máquina. Esses comandos são o ponto de partida de qualquer diagnóstico.
ls -lah
whoami
id
hostnamectl
O comando id mostra os grupos efetivos do usuário. Isso é mais confiável do que assumir que um usuário tem acesso só porque o nome parece administrativo.
2. Usuários, grupos e sudo
Trabalhar como root o tempo todo é uma prática arriscada: qualquer comando errado tem alcance total sobre o sistema, e não há rastro de quem fez o quê. O padrão em produção é criar um usuário nominal por pessoa (ou por serviço) e conceder privilégios administrativos pontualmente via sudo.
sudo adduser deploy
sudo usermod -aG sudo deploy
getent group sudo
sudo -l -U deploy
3. Entendendo permissões
Cada arquivo possui permissões para proprietário, grupo e outros. Leia a saída de ls -l da esquerda para a direita: tipo, usuário, grupo e bits de leitura, escrita e execução.
ls -l deploy.sh
sudo chown deploy:deploy deploy.sh
chmod 750 deploy.sh
No exemplo acima, 750 dá leitura/escrita/execução ao dono, leitura/execução ao grupo, e nada para os demais. É um bom ponto de partida para scripts de deploy que só o próprio usuário e sua equipe devem rodar.
deploy, adicione-o ao grupo sudo e confirme os privilégios com sudo -l -U deploy. Depois crie um arquivo deploy.sh e ajuste suas permissões para 750.