User Tools

Site Tools


wiki:linux:comandos_grupos:cmd_diagnostic

Nível Básico

1. Monitoramento Básico com `uptime`

  • uptime - Exibe o tempo de funcionamento do sistema e a carga média.
    1. Exemplo de uso:
      uptime
    2. Descrição: Mostra há quanto tempo o sistema está em execução, o número de usuários conectados e a carga média da CPU nas últimas 1, 5 e 15 minutos.

2. Verificação de Processos com `ps`

  • ps - Exibe processos em execução.
    1. Exemplo de uso:
      ps
    2. Descrição: Exibe uma lista de processos em execução pelo usuário atual no terminal.
  • ps aux - Lista todos os processos em execução no sistema.
    1. Exemplo de uso:
      ps aux
    2. Descrição: Mostra todos os processos ativos no sistema, incluindo informações sobre o uso de CPU e memória.

3. Verificação de Uso de Disco com `df`

  • df -h - Exibe o uso do espaço em disco de forma legível.
    1. Exemplo de uso:
      df -h
    2. Descrição: Mostra o uso do espaço em disco em cada sistema de arquivos montado, exibido em MB e GB.

4. Verificação de Uso de Memória com `free`

  • free -h - Exibe o uso de memória RAM e swap.
    1. Exemplo de uso:
      free -h
    2. Descrição: Mostra a quantidade de memória livre e em uso no sistema, incluindo a memória swap, em formato legível (MB/GB).

Nível Intermediário

1. Monitoramento de Processos com `top`

  • top - Exibe os processos em tempo real.
    1. Exemplo de uso:
      top
    2. Descrição: Monitora o uso da CPU, memória, e outros recursos por processos em execução no sistema em tempo real, com a possibilidade de ordenar e gerenciar processos.

2. Uso de Rede com `netstat`

  • netstat -tuln - Exibe as conexões de rede e portas abertas.
    1. Exemplo de uso:
      netstat -tuln
    2. Descrição: Mostra todas as conexões TCP/UDP ativas e as portas abertas no sistema.
  • netstat -i - Exibe estatísticas de interfaces de rede.
    1. Exemplo de uso:
      netstat -i
    2. Descrição: Mostra informações sobre as interfaces de rede e suas estatísticas, como pacotes enviados e recebidos.

3. Monitoramento de I/O com `iostat`

  • iostat - Exibe estatísticas de I/O de disco.
    1. Exemplo de uso:
      iostat
    2. Descrição: Mostra informações sobre o desempenho de I/O dos discos, como a taxa de transferência e o tempo de utilização dos dispositivos de armazenamento.

4. Análise de Logs com `dmesg`

  • dmesg - Exibe mensagens do kernel.
    1. Exemplo de uso:
      dmesg
    2. Descrição: Mostra mensagens do kernel, incluindo informações de inicialização do sistema, erros de hardware, e eventos relacionados a dispositivos de hardware.
  • dmesg | tail - Exibe as últimas mensagens do kernel.
    1. Exemplo de uso:
      dmesg | tail
    2. Descrição: Mostra as últimas linhas das mensagens do kernel, útil para verificar eventos recentes ou problemas que ocorreram após a inicialização do sistema.

Nível Avançado

1. Monitoramento Detalhado com `htop`

  • htop - Ferramenta interativa para monitoramento de processos.
    1. Exemplo de uso:
      htop
    2. Descrição: Fornece uma interface interativa para monitorar processos, com a possibilidade de ordenar, filtrar e matar processos facilmente, além de mostrar o uso de CPU por núcleo e consumo de memória.

2. Monitoramento de Tráfego de Rede com `iftop`

  • iftop - Exibe o uso de largura de banda em tempo real.
    1. Exemplo de uso:
      sudo iftop
    2. Descrição: Monitora o uso de largura de banda por IP em tempo real, útil para identificar gargalos ou uso excessivo da rede por determinados hosts.
  • iftop -i eth0 - Monitora o tráfego em uma interface específica.
    1. Exemplo de uso:
      sudo iftop -i eth0
    2. Descrição: Mostra o tráfego de rede específico da interface eth0, útil para análise de tráfego em ambientes com várias interfaces de rede.

3. Análise Detalhada de Processos com `strace`

  • strace - Exibe chamadas de sistema feitas por um processo.
    1. Exemplo de uso:
      strace -p 1234
    2. Descrição: Monitora e exibe todas as chamadas de sistema feitas pelo processo com o PID 1234, útil para diagnosticar problemas em processos ou identificar quais recursos estão sendo acessados.
  • strace -e trace=open,read - Monitora chamadas específicas de um processo.
    1. Exemplo de uso:
      strace -e trace=open,read -p 1234
    2. Descrição: Monitora apenas as chamadas de sistema relacionadas à abertura e leitura de arquivos feitas pelo processo com PID 1234.

4. Diagnóstico de Rede com `nmap`

  • nmap - Escaneia portas abertas em um host.
    1. Exemplo de uso:
      nmap 192.168.1.1
    2. Descrição: Realiza um escaneamento das portas abertas no IP 192.168.1.1, útil para identificar quais serviços estão em execução em um host remoto.
  • nmap -sP - Verifica quais hosts estão ativos em uma rede.
    1. Exemplo de uso:
      nmap -sP 192.168.1.0/24
    2. Descrição: Realiza um ping sweep para identificar quais hosts estão ativos na sub-rede 192.168.1.0/24.

5. Monitoramento de Entrada/Saída com `iotop`

  • iotop - Monitora o uso de I/O em tempo real.
    1. Exemplo de uso:
      sudo iotop
    2. Descrição: Exibe uma lista de processos que estão realizando operações de leitura e escrita em disco, ordenados pelo uso de I/O, útil para identificar processos que estão causando alto consumo de disco.

6. Monitoramento de Utilização de Rede com `vnstat`

  • vnstat - Monitora o uso de rede em longo prazo.
    1. Exemplo de uso:
      vnstat
    2. Descrição: Coleta e exibe estatísticas sobre o uso de largura de banda ao longo do tempo, permitindo monitorar o tráfego diário, semanal ou mensal.
  • vnstat -d - Exibe o uso diário da rede.
    1. Exemplo de uso:
      vnstat -d
    2. Descrição: Exibe o uso de rede diário para cada interface monitorada, permitindo a análise do tráfego de rede ao longo de vários dias.

Nível Especializado

1. Análise de Desempenho com `perf`

  • perf stat - Coleta estatísticas detalhadas de desempenho.
    1. Exemplo de uso:
      sudo perf stat sleep 5
    2. Descrição: Coleta e exibe estatísticas de desempenho enquanto o comando sleep 5 é executado, incluindo ciclos de CPU, instruções, cache misses e outros dados.
  • perf record - Registra eventos de desempenho para análise posterior.
    1. Exemplo de uso:
      sudo perf record -e cpu-clock -p 1234
    2. Descrição: Grava eventos relacionados ao uso de CPU para o processo com o PID 1234, permitindo uma análise mais detalhada com base no tempo de CPU consumido.

2. Auditoria de Sistema com `auditd`

  • auditctl - Configura auditoria de eventos no sistema.
    1. Exemplo de uso:
      sudo auditctl -w /etc/shadow -p wa -k senha_monitorada
    2. Descrição: Configura auditoria para o arquivo /etc/shadow e registra qualquer tentativa de alteração ou escrita, usando a chave de auditoria senha_monitorada.
  • ausearch - Busca eventos de auditoria no sistema.
    1. Exemplo de uso:
      sudo ausearch -k senha_monitorada
    2. Descrição: Pesquisa todos os eventos de auditoria relacionados à chave senha_monitorada, facilitando a verificação de quem tentou modificar o arquivo monitorado.

3. Análise de Tráfego com `tcpdump`

  • tcpdump -i eth0 - Captura pacotes de rede em uma interface.
    1. Exemplo de uso:
      sudo tcpdump -i eth0
    2. Descrição: Captura todos os pacotes de rede que passam pela interface eth0 e exibe detalhes sobre cada pacote, útil para depuração de redes e análise de segurança.
  • tcpdump -w captura.pcap - Salva pacotes de rede para análise posterior.
    1. Exemplo de uso:
      sudo tcpdump -i eth0 -w captura.pcap
    2. Descrição: Captura pacotes da interface eth0 e os salva no arquivo captura.pcap para análise posterior com ferramentas como Wireshark.

4. Monitoramento de Contêineres com `cAdvisor`

  • cAdvisor - Monitora o desempenho de contêineres em tempo real.
    1. Exemplo de uso:
      docker run -d --name=cadvisor -p 8080:8080 --volume=/:/rootfs:ro --volume=/var/run:/var/run:rw --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro google/cadvisor
    2. Descrição: Inicia o cAdvisor em um contêiner Docker, monitorando o desempenho e a utilização de recursos (CPU, memória, I/O) de todos os contêineres ativos no host.

5. Monitoramento Centralizado com `Zabbix`

  • zabbix_agentd - Inicia o agente do Zabbix para monitoramento de um host.
    1. Exemplo de uso:
      sudo systemctl start zabbix-agent
    2. Descrição: Inicia o agente Zabbix, permitindo o monitoramento centralizado de métricas de desempenho e uso de recursos no host a partir do servidor Zabbix.
  • zabbix_get - Consulta informações de monitoramento de um agente.
    1. Exemplo de uso:
      zabbix_get -s 192.168.1.100 -k 'system.cpu.load[all,avg1]'
    2. Descrição: Obtém a carga média de CPU nos últimos 1 minuto do host com o IP 192.168.1.100, usando o agente Zabbix para consulta remota.

6. Monitoramento em Nuvem com `Prometheus` e `Grafana`

  • Prometheus - Coleta métricas de serviços e sistemas.
    1. Exemplo de uso:
      docker run -d --name=prometheus -p 9090:9090 prom/prometheus
    2. Descrição: Inicia o servidor Prometheus para coletar métricas de sistemas e serviços, como uso de CPU, memória, e tráfego de rede, permitindo monitoramento detalhado e análise histórica.
  • Grafana - Visualiza métricas coletadas com Prometheus.
    1. Exemplo de uso:
      docker run -d --name=grafana -p 3000:3000 grafana/grafana
    2. Descrição: Inicia o Grafana, uma plataforma de visualização de dados, conectada ao Prometheus para criar gráficos e dashboards personalizados para monitoramento de sistemas e serviços.
wiki/linux/comandos_grupos/cmd_diagnostic.txt · Last modified: by Wiki Administrator