Essencial Linux: Comandos e Técnicas para Administração de Sistemas

Este guia reúne comandos práticos e estratégias essenciais para operação, diagnóstico e manutenção de sistemas Linux — focado em produtividade, rastreamento de erros e gerenciamento eficiente de recursos.

Monitoramento em Tempo Real de Logs

Para acompanhar eventos à medida que são registrados:

tail -f /var/log/messages

Ou, em ambientes de aplicações web (ex.: Rails):

tail -f log/production.log

Análise de Uso de Espaço em Disco

  • Espaço total do diretório atual:
    du -sh
  • Distribuição por subdiretório de primeiro nível:
    du -lh --max-depth=1
  • Detalhamento granular (arquivos + pastas dentro de um caminho):
    du -h --max-depth=1 /opt && du -h --max-depth=1 /opt/*

Gerenciamento de Conexões de Rede

Número atual de conexões TCP estabelecidas:

ss -tn state established | wc -l

Observação: ss é preferido a netstat em sistemas modernos por ser mais rápido e menos dependente de módulos obsoletos.

Ferramentas de Busca Avançada

  • find — busca baseada em atributos do sistema de arquivos:
    find /var/www -name "*.php" -mtime -7 -type f (PHP modificados nos últimos 7 dias)
    find /usr -type d -name "bin" -maxdepth 2 (pastas "bin" até dois níveis de profundidade)
  • grep — busca textual dentro de conteúdo de arquivos:
    grep -r "error_log" /etc/apache2/ --include="*.conf"
  • which / whereis / locate:
    which systemctl → localiza binários no $PATH
    whereis nginx → exibe binário, fonte e manual
    locate -i "*.conf" → busca rápida usando banco de dados atualizado via updatedb

Operações Seguras com Arquivos e Diretórios

  • Mover com backup inteligente:
    mv -bv --suffix=".bkp" config.yml /etc/config.yml
  • Copiar recursivamente com verbosidade:
    cp -rv src/ /var/www/html/
  • Redirecionamento seguro para append:
    echo "DEBUG: $(date)" >> /tmp/debug.log

Controle de Processos e Serviços

Verificar instâncias ativas do PHP-FPM e contagem de workers:

ps aux | grep php-fpm | grep -v grep<br></br>ps aux | grep 'pool www' | wc -l

Configuração de Servidores Web

Validação e inspeção de configurações do Apache:

apache2ctl -t                    # Verifica sintaxe<br></br>apache2ctl -t -D DUMP_VHOSTS   # Lista hosts virtuais ativos

Agendamento de Tarefas com Cron

Exemplo de tarefa a cada minuto (via crontab do usuário root):

*/1 * * * * echo "$(date): executed" >> /var/log/minutely.log

Verifique execução com:

tail -f /var/log/syslog | grep CRON<br></br>journalctl -u cron -f

Conectividade SSH Estável

Evite desconexões automáticas ao configurar o cliente SSH:

mkdir -p ~/.ssh<br></br>echo -e "Host *\n\tServerAliveInterval 60\n\tServerAliveCountMax 3" > ~/.ssh/config

Se houver falha de chave após alteração de IP ou reinstalação do servidor, limpe entradas antigas:

ssh-keygen -R [IP_DO_SERVIDOR]

Atualização de Pacotes Críticos (ex.: Nginx no Debian)

Adicione repositório oficial e instale versão estável mais recente:

echo "deb http://nginx.org/packages/debian $(lsb_release -sc) nginx" | sudo tee /etc/apt/sources.list.d/nginx.list<br></br>wget -qO- https://nginx.org/keys/nginx_signing.key | sudo apt-key add -<br></br>sudo apt update && sudo apt install nginx -y

Tags: Linux shell SysAdmin nginx apache

Publicado em 8-25 08:29