Monitoramento de processos no Linux com comando htop

Como monitorar processos no Linux com comando htop

htop é uma ferramenta interativa para monitoramento de processos no Linux. Ele oferece uma interface amigável que exibe informações detalhadas sobre processos, consumo de recursos como CPU e memória, e permite interagir com os processos de forma intuitiva.

Por que usar o htop?

O utilitário htop possui diversas vantagens em relação ao tradicional utilitário top, incluindo:

  • Apresenta uma interface visual fácil de usar, com barras de uso de CPU e memória. É uma versão mais amigável do top.
  • Possui mais recursos que o comando top, como por exemplo suporte a mouse e ordenação interativa.
  • Permite gerenciar processos diretamente, como matar ou renomear processos.

A ferramenta htop está disponível para Linux, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, MacOS e Solaris, e sua página de desenvolvimento oficial é https://htop.dev/.

Instalação do htop

Em algumas distribuições e sistemas, o htop não vem pré-instalado. Podemos usar os seguintes comandos para instalá-lo:

  • Debian/Ubuntu: sudo apt install htop
  • Fedora: sudo dnf install htop
  • Arch Linux: sudo pacman -S htop
  • macOS: brew install htop
  • FreeBSD: sudo pkg install htop

Como usar o htop

Para iniciar o htop, basta executar:

$ sudo htop

Interface do htop

Ao iniciar, o htop exibe as informações divididas em três seções principais:

1 – Cabeçalho

Mostra o uso da CPU, memória, e swap com barras coloridas, além do número de tarefas, carga média do sistema e uptime. Exemplo:

Cabeçalho da aplicação htop no Linux

Aqui temos:

CPU: Representa o uso das CPUs do sistema. Geralmente é exibido como barras de progresso para cada núcleo, mostrando:

  • Uso do usuário (verde ou azul): Tempo gasto em processos de usuários.
  • Uso do sistema (vermelho): Tempo gasto em tarefas do kernel.
  • Ocioso (preto ou vazio): Tempo em que a CPU está inativa.

Mem: Refere-se ao uso da memória RAM do sistema. Exibe a memória total, usada, livre e buffers/cache.

Na figura acima temos que 1,05 GB de RAM estão sendo usados de um total de 3,02 GB.

Swp: Representa o uso da memória de swap. Mostra a memória total de swap, usada e livre.

Tasks: Exibe o número total de tarefas (processos) e o status delas. Inclui:

  • Total de tarefas.
  • Processos em execução.
  • Processos em estado de espera.

No exemplo, existem 103 processos ativos, 294 threads e 1 processo em execução.

Load Average: Mostra a média de carga do sistema nos últimos 1, 5 e 15 minutos. Valores elevados indicam que muitos processos estão competindo por recursos.

Uptime: Indica o tempo total que o sistema está em execução desde a última inicialização. Geralmente exibido no formato dias:horas:minutos.

No exemplo, temos que o sistema está ativo há apenas 07 minutos e 30 segundos.

2 – Lista de processos

Exibe os processos em execução no sistema com diversas informações em várias colunas. Exemplo de saída:

Lista de processos do htop no Linux

As colunas são:

PID: Número de identificação do processo.

USER: Usuário que iniciou o processo (seu proprietário).

PR: Prioridade do processo. Quanto menor o valor, maior a prioridade

NI: Valor “nice” do processo, que afeta sua prioridade de execução.

VIRT: Quantidade de memória virtual usada pelo processo.

RES: Quantidade de memória RAM física usada pelo processo, em kilobytes.

SHR: Quantidade de memória compartilhada que o processo está usando.

S: Status do processo, como Em Execução, Parado, Zumbi, Dormindo, Rastreado, etc.)

%CPU: Porcentagem de uso de CPU pelo processo.

%MEM: Porcentagem de uso de memória RAM (física) pelo processo.

TIME+: Quanto tempo de processamento o processo já usou (cumulativo)

COMMAND: Nome do comando ou programa que iniciou o processo.

3 – Rodapé

Exibe as teclas de função disponíveis para interagir com os processos, como mostra o exemplo abaixo.

Rodapé do htop no Linux

A tabela abaixo mostra as teclas de acesso do rodapé do utilitário htop, com a descrição sucinta de cada uma delas:

Tecla Descrição
F1 Exibe a ajuda.
F2 Configurações do htop, como colunas visíveis e cores.
F3 Busca um processo pelo nome ou comando.
F4 Aplica um filtro para exibir apenas processos que correspondem ao filtro.
F5 Exibe os processos em formato de árvore (relação pai-filho).
F6 Ordena os processos por uma coluna (ex.: %CPU, %MEM, PID).
F7 Diminui o valor de Nice do processo
F8 Aumenta o valor de Nice do processo
F9 Mata (kill) um processo selecionado.
F10 Sai do htop.
Setas Navegação na lista de processos.
Espaço Seleciona/deseleciona um processo para ações em grupo.

Vejamos alguns exemplos de uso do htop agora.

Exemplos práticos

1 – Listar todos os processos:

$ sudo htop

Observe os processos em execução, organizados pela utilização de CPU por padrão.

2 – Ordenar processos pelo uso de memória:

Pressione F6 e escolha %MEM na lista de colunas disponíveis.

3 – Exibir processos em formato de árvore

Pressione F5 para alternar para a exibição em formato de árvore

Isso ajuda a visualizar a hierarquia de processos (processos pai e filhos).

4 – Buscar um processo específico

Pressione F3 e digite o nome do processo (ex.: bash). 

Digite o nome ou parte do comando do processo que deseja localizar (ex.: “bash”).

5 – Matar (kill) um processo

Selecione o processo usando as setas e pressione F9.
Escolha o sinal para enviar (por padrão, SIGTERM).            

6 – Filtrar processos

  1. Pressione a tecla F4.
  2. Digite parte do nome ou comando do processo (por ex.: python).
  3. O htop exibirá apenas processos que correspondem ao filtro.

Muito bom. Na sequência, liso alguns exercícios sobre o comando htop para você treinar um pouco mais seu uso. A resolução sugerida de cada um se encontra logo após a listagem.

Exercícios: Comando htop

  1. Use o htop para listar todos os processos em execução e identifique o processo com maior uso de CPU.
  2. Altere a visualização para o formato de árvore e identifique o processo pai do bash.
  3. Ordene os processos pelo uso de memória e localize o processo que está consumindo mais memória.
  4. Encontre o processo do htop em execução usando a função de busca.
  5. Mate um processo específico, como o sleep, iniciado manualmente no terminal.

Resolução dos exercícios

  1. Listar todos os processos e identificar o maior consumidor de CPU:
    $ sudo htop
  2. Alterar para o formato de árvore e identificar o processo pai do bash:
    Pressione F5.
  3. Ordenar por uso de memória e identificar o maior consumidor:
    Pressione F6 e escolha %MEM.
  4. Encontrar o processo do htop em execução:
    Pressione F3 e digite htop.
  5. Matar um processo específico:
    Inicie um processo de teste com sleep 300, localize-o no htop e pressione F9.

Conclusão

htop é uma ferramenta avançada e interativa para monitoramento e gerenciamento de processos no Linux. Com uma interface fácil de usar e funcionalidades adicionais em relação ao top, ele é bastante útil para administradores de sistemas e usuários avançados. 

Sobre Fábio dos Reis (1223 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

1 Trackbacks & Pingbacks

  1. Monitorar uso de recursos do sistema com comando top no Linux - Bóson Treinamentos em Ciência e Tecnologia

Escreva um comentário

Seu e-mail não será divulgado


*