Monitoramento de processos no Linux com comando htop
Como monitorar processos no Linux com comando htop
O 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:
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:
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.
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
- Pressione a tecla F4.
- Digite parte do nome ou comando do processo (por ex.: python).
- 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
- Use o htop para listar todos os processos em execução e identifique o processo com maior uso de CPU.
- Altere a visualização para o formato de árvore e identifique o processo pai do bash.
- Ordene os processos pelo uso de memória e localize o processo que está consumindo mais memória.
- Encontre o processo do htop em execução usando a função de busca.
- Mate um processo específico, como o sleep, iniciado manualmente no terminal.
Resolução dos exercícios
- Listar todos os processos e identificar o maior consumidor de CPU:
$ sudo htop
- Alterar para o formato de árvore e identificar o processo pai do bash:
Pressione F5.
- Ordenar por uso de memória e identificar o maior consumidor:
Pressione F6 e escolha %MEM.
- Encontrar o processo do htop em execução:
Pressione F3 e digite htop.
- Matar um processo específico:
Inicie um processo de teste com
sleep 300
, localize-o no htop e pressione F9.
Conclusão
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.
Escreva um comentário