Como Usar ps, top e kill - Tutorial de Gerenciamento de Processos Linux
Ao trabalhar com Linux, voce inevitavelmente encontrara situacoes como estas:
- Um comando que nao responde
- Uso de CPU disparando repentinamente
- Nao saber quais processos estao rodando
Este artigo visa ajuda-lo a tomar decisoes informadas sobre gerenciamento de processos, nao apenas memorizar comandos.
Conclusao Primeiro: O Padrao de Decisao
Quando voce tem problemas com processos, verifique nesta ordem:
- Veja o que esta rodando no momento
- Verifique a carga e o status
- Apenas se necessario, pare gentilmente
Nao executar kill imediatamente e a chave para prevenir acidentes.
O Que e um Processo (Conhecimento Minimo)
Conclusao: Um processo e um programa em execucao com um novo PID a cada vez; confirme o PID antes de usar kill.
Um processo e uma instancia em execucao de um programa. Mesmo o mesmo comando e tratado como um processo diferente a cada vez que roda.
Pontos-Chave para Lembrar
- Cada processo recebe um PID (Process ID)
- PIDs mudam a cada execucao
Nao entender que "PIDs mudam" pode levar a operacoes incorretas.
ps: Obtenha a Visao Geral Primeiro
Conclusao: ps aux mostra PID, CPU e COMMAND -- sempre veja a visao completa antes de agir.
Forma Basica
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 169084 1208 ? Ss 10:00 0:01 /sbin/init user 2345 80.2 5.1 512000 42000 ? R 10:15 2:34 python app.py
O Que Observar
- PID: O numero que voce usara para operacoes
- %CPU / %MEM: Indicadores de carga
- COMMAND: O que esta rodando
top: Veja o Que Esta Pesado em Tempo Real
Conclusao: Use top para ver load average e uso de CPU ao vivo; sempre identifique a causa primeiro.
Executando
$ top
Itens Comuns para Observar
- load average no topo
- %CPU na lista de processos
Exemplos de Decisao
- Load average alto --> CPU esta congestionada
- Processo especifico com %CPU alto --> Provavel culpado
Saia do top com a tecla q.
Erro Comum #1: Matar a 100% de CPU
Conclusao: Evite kill -9 a 100% de CPU -- pula limpeza e arrisca perda de dados. Observe primeiro.
Concepcao Errada Comum
$ kill -9 2345
Esta operacao pode:
- Pular procedimentos de limpeza
- Causar corrupcao ou inconsistencia de dados
CPU alta e frequentemente processamento temporario, entao observar primeiro e uma decisao importante.
kill: Entendendo o Encerramento Seguro
Conclusao: Envie SIGTERM com kill PID primeiro; use kill -9 apenas quando o processo o ignora.
Basico (Parada Gentil)
$ kill 2345
Isso envia SIGTERM. Pense nisso como "pedir" ao processo para encerrar.
Encerramento Forcado (Ultimo Recurso)
$ kill -9 2345
- Use apenas quando nada mais funcionar
- Nao faca disso um habito
Erro Comum #2: Matar o Processo Errado
Conclusao: grep mostra a si mesmo; verifique COMMAND antes de usar kill -- nunca confie apenas no PID.
Padrao Que Requer Cuidado
$ ps aux | grep python $ kill 1234
- O proprio grep aparece na saida
- Leitura errada do PID
Contramedidas
- Sempre verifique COMMAND
- Nao decida apenas pelo PID
Quando Processos Continuam se Multiplicando
Conclusao: Quando processos continuam crescendo, verifique cron, auto-inicio e processo pai primeiro.
Pontos para Verificar
- Esta iniciando automaticamente?
- Esta agendado (cron, etc.)?
- Qual e o processo pai?
Em vez de parar processos imediatamente, pensar por que eles estao se multiplicando previne recorrencia.
Pratica: Procedimento Seguro de Verificar e Parar
Conclusao: ps, depois top, depois kill: siga esta ordem para observar, decidir e agir com seguranca.
Etapas Recomendadas
$ ps aux # 1. Obter visao geral $ top # 2. Verificar carga $ kill 2345 # 3. Parar gentilmente
O Que Esta Ordem Previne
- Operacoes equivocadas
- Encerramentos forcados desnecessarios
Por Que Este Procedimento e Seguro
- Segue: observar situacao --> decidir --> agir
- Previne confusao de PIDs
- Dificulta matar acidentalmente cargas temporarias
No gerenciamento de processos, "nao ter pressa" leva a seguranca.
Proximas Leituras
Conclusao: Proximo: gerenciamento de processos pratico e hub LPIC-1 para praticar ps, top e kill.
- Gerenciamento de Processos Pratico - Controle de jobs, pkill, nice
- Comandos Essenciais do Linux
- Permissoes Basico