Como visualizar processos em execução no Linux

Tudo que está sendo executado em um sistema Linux, de um aplicativo de usuário a um serviço de sistema, é um processo separado. Mesmo que seu computador esteja diante de uma tela de terminal em branco, sem dúvida há uma série de processos em execução em segundo plano. Existem várias ferramentas do Linux que podemos usar para identificar todos os processos em nosso sistema, e é isso que abordaremos neste guia.

Saber como verificar os processos em execução permitirá que você verifique se algo está sendo executado, encerre-o se necessário e monitore seu impacto nos recursos do sistema (CPU e RAM).

Listando processos com o comando ps

O comando ps pode listar todos os processos em execução em um sistema Linux com a opção -e.

ps -e

É normal que um sistema tenha um grande número de processos em execução em a qualquer momento, então é mais fácil vasculhar esta lista canalizando o comando para mais. Por exemplo, para ver 15 linhas por vez:

ps -e | more -15

A saída do ps está nos mostrando cada processo em execução, seu respectivo ID de processo (abreviado como PID) e o TTY (interface de terminal em que o processo está sendo executado). Um ponto de interrogação na coluna TTY significa que o processo não está anexado a qualquer terminal interno erface – está apenas sendo executado em segundo plano.

Você pode precisar saber o PID de um processo para eliminá-lo, ou o TTY para que possa retornar ao processo aberto reanexando-o ao janela de terminal.

Outra opção útil com ps é a opção -aux.

ps -aux

Como a opção anterior, isso irá listar todos os processos rodando em seu sistema. Mas, também lista o uso atual de CPU e RAM de cada processo, bem como o comando que gerou cada processo.

Encontrando um processo com pgrep

O tipo de combinação pgrep commad ps e grep para nós. Podemos especificar o nome – ou parte de um nome – de um processo que estamos procurando, e pgrep retornará os respectivos IDs de processo.

Por exemplo, para pesquisar qualquer SSH processo relacionado em seu sistema, você digitaria:

pgrep ssh

Como mostrado na imagem acima, pgrep encontrou um processo SSH com um PID de 1143. Para mais verificação, vamos verificar com o comando ps:

ps -e | grep 1143

Ver processos em execução com top

O utilitário principal é, obviamente, uma ferramenta de linha de comando, mas fornece uma saída interativa de todos os processos atualmente em execução, exibindo as informações como você esperaria ver em uma interface gráfica. É fácil começar, basta digitar top:

top

A saída do topo nos fornece wi muitas informações, incluindo o uso geral de CPU e RAM em nosso sistema. Mas estamos aqui para obter a lista de processos, que você encontrará logo abaixo.

A janela do terminal simplesmente não é grande o suficiente para permitir que o topo liste todos os processos em execução, portanto, o topo exibe tantos como pode e os ordena por uso de recursos do sistema. Em outras palavras, os processos que usam mais CPU e RAM serão listados no topo. Processos menos exigentes aparecerão na parte inferior da lista, possivelmente corte na janela do terminal.

Use as setas do teclado para rolar para cima e para baixo na lista de processos.

Há muitas informações listadas sobre cada processo em execução. Aqui está um resumo rápido do que essas colunas diferentes significam:

  • PID: O ID do processo de cada tarefa.
  • PR: A prioridade de agendamento de uma tarefa.
  • NI: O bom valor de uma tarefa. Números negativos indicam maior prioridade.
  • VIRT: A quantidade de memória virtual sendo usada.
  • RES: A quantidade de memória residente em uso.
  • SHR: A quantidade de memória compartilhada em uso.
  • S: O status de uma tarefa (R = em execução, S = em espera).
  • % CPU: Porcentagem de CPU atual sendo usada por uma tarefa.
  • % MEM: Porcentagem de RAM atual sendo usada por uma tarefa.
  • TIME +: O tempo de CPU de uma tarefa.
  • COMANDO: O comando usado para iniciar a tarefa.

Como mencionado, o top é interativo, então podemos usar alguns atalhos de teclado para fazer coisas legais com ele. Nós ” veremos alguns dos mais úteis a seguir.

Pressione a tecla z para colorir os processos de execução do código. Isso torna mais fácil diferenciar tarefas em execução de processos adormecidos ou zumbis.

Pressione a tecla c para obter o comando completo usado para cada tarefa. Isso mostrará o caminho absoluto, junto com todas as opções usadas.

Pressione a tecla k para encerrar um processo em execução, direto do utilitário superior. Isso economiza algum tempo de ter que sair do utilitário e emitir um comando kill separado. Você só precisa digitar o PID do processo que deseja encerrar:

Pressione a tecla r para alterar a prioridade de um processo com renice. Digite o PID do processo que deseja renice:

Para mais opções, pressione a tecla h (ajuda) para ver tudo o mais que o top pode fazer.

Depois de terminar de usar o utilitário superior, você pode sair da ferramenta e retornar ao terminal pressionando q.

Visualize os processos em execução com htop

O O utilitário htop é construído a partir do topo e é um pouco mais amigável e agradável de se olhar. A única desvantagem é que ele não é instalado em todas as distribuições Linux por padrão, então você pode precisar instalá-lo primeiro. Ele deve estar nos repositórios de seu sistema operacional, então aqui está como instalá-lo com seu gerenciador de pacotes:

Debian e Ubuntu:

sudo apt-get install htop

CentOS e Fedora:

dnf install htop

Red Hat:

yum install htop

Depois de instalado, basta digitar htop para executar o utilitário.

htop

Você pode usar o mouse para interagir com o htop, e os vários comandos do teclado estão listados na parte inferior da janela do terminal. Funciona basicamente da mesma forma que no topo, mas com uma interface mais limpa que é mais fácil de entender.

Conclusão

Neste guia, mostramos alguns métodos diferentes para visualizar os processos em execução em um sistema Linux. Qual deles você usará dependerá da situação em questão e sua preferência pessoal, mas cada método tem seus próprios benefícios.

Leave a Reply

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *