Comandos Avançados no Terminal Linux - Referência Técnica

[Comandos] [Exemplos] [Observações Técnicas] [Ação]
[find] find /var/log -name "*.log" -mtime +30 -exec gzip {} \; Compacta logs com mais de 30 dias.
[Use -print antes de -exec para testar]
[grep] grep -E 'error|fail' /var/log/syslog | tail -n 20
Mostra últimas 20 linhas com "error" ou "fail"
Para destaque --color=auto.
[rsync] rsync -avz -e ssh /home/user/ user@backup:/backup/ Sincroniza via SSH.
[Sempre teste com --dry-run em ambientes críticos]
[awk] df -h | awk '$5+0 > 80 {print $1, $5}' Liste partições com uso > 80%. O +0 converte string para número [evita falha com "%"].
[chmod] chmod 600 ~/.ssh/id_rsa Permissões seguras para chave privada SSH
[só dono: leitura/escrita]
[chmod -R] find /var/www/html -type d -exec chmod 755 {} \; && find /var/www/html -type f -exec chmod 644 {} \; ⚠️ Não use chmod -R 755 — aplica permissão de pasta a arquivos. Use find para separar diretórios [755] e arquivos [644].
[chown] sudo chown -R www-data:www-data /var/www Define proprietário para servidor web.
Verifique se o serviço usa esse usuário/grupo.
[umask] umask 022 (padrão) ou umask 077 (privado) Define permissões padrão: 022 → arquivos 644/pastas 755; 077 → só dono tem acesso.
[htop] htop Monitoramento interativo.
Pressione F5 para modo árvore.
[ps] ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head Lista processos por uso de memória [decrescente]
[lsof] lsof -i :80 Mostra qual processo está usando a porta 80.
[iotop] sudo iotop Monitora I/O de disco em tempo real
[requer root]