Linux PC

Como matar um processo no Linux

How to Kill a Process in Linux

Todos nós já tivemos aqueles dias em que nosso computador funciona excepcionalmente lento e gagueja ao executar até mesmo as tarefas básicas. No Windows, você só tem o Gerenciador de Tarefas do Windows para inspecionar e matar processos que não são tão importantes, mas consomem enormes quantidades de memória. No entanto, no Linux, você tem todo um arsenal de comandos e ferramentas GUI para gerenciar essas tarefas. Neste artigo, mostraremos alguns métodos fáceis de linha de comando (CLI), bem como métodos GUI para eliminar um processo no Linux.

Encerrar processo no Linux (2023)

Mas antes de mergulharmos no mundo do gerenciamento de processos no Linux, vamos entender o que exatamente é um processo e o que é um ID de processo em sistemas Linux.

O que são processos no Linux

No Linux, cada instância de um programa atualmente em execução é conhecida como um “processo”, enquanto cada arquivo executável é conhecido como um programa. Quando qualquer programa é executado, um processo é criado e cada processo recebe um número de identificação exclusivo de 5 dígitos conhecido como “ID do processo”. Quando um processo termina a execução ou é encerrado à força, seu ID de processo é atribuído ao próximo processo da linha.

Matar processo via linha de comando no Linux

Embora o uso do terminal às vezes pareça intimidador em comparação com o uso de ferramentas GUI para tarefas básicas, o gerenciamento de vários processos se torna muito mais fácil quando você entende os comandos e suas várias opções.

Sinais de terminação

Quando você tenta matar um processo da GUI ou da CLI no Linux, o kernel envia um sinal de encerramento para o processo. O processo age de acordo, dependendo do sinal recebido. A cada um desses sinais é atribuído um número específico para o programa entender rapidamente. Existem inúmeros tipos de sinais de terminação, mas explicamos apenas os essenciais aqui:

Sinal Valor numérico Descrição
INSCREVA-SE 1 Significa ‘Signal Hangup’
É enviado quando o terminal é fechado.
ASSINAR 2 Significa ‘interrupção de sinal’
É enviado quando o usuário finaliza o processo.
SIGKILL 9 Significa ‘Signal Kill’
É enviado quando você precisa encerrar um processo imediatamente
SIGTERM 15 Significa ‘Rescisão do Sinal’
É enviado quando você precisa encerrar um processo e liberar os recursos consumidos
SIGSTOP 19 – para ARM, x86
17 – para ALFA
23 – para MIPS
24 – para PA-RISC
Significa ‘Sinal Stop’
É enviado quando você precisa pausar um processo e retomá-lo mais tarde
Os sinais mais usados ​​são o SIGKILL (9) e o SIGTERM (15).

Identifique os IDs do processo

Antes de encerrar um processo, você precisa saber alguns detalhes do processo, como ID do processo, tempo de execução, etc. Para saber os detalhes de um processo, use o ps comando:

ps

Com o comando ps, você precisa procurar o processo rolando e anotando seu nome, o que pode ser complicado. Em vez disso, você pode até usar o grep comando com o ps comando em um pipeline, conforme mostrado abaixo:

ps | grep <process_name>

Para tornar as coisas mais simples, existe um comando separado que mostra apenas o ID do processo de qualquer processo em execução que você precisa saber. A sintaxe para usar o pidof comando é:

pidof <process_name>

Identificando o ID do processo

Encerre o processo usando o comando kill

Depois de anotar o ID do processo que deseja encerrar, o comando mais comum usado para encerrar programas em seu sistema Linux é o comando kill. A sintaxe para usar o comando kill é:

kill <signal> <process_id>

O <signal> o parâmetro é opcional e o comando kill envia o sinal SIGTERM (15) por padrão. Você pode enviar qualquer outro sinal por seu valor numérico ou pelo nome do sinal real da tabela acima.

terminar usando o comando kill

Encerrar Processo usando o comando pkill

Se você achar que a busca pelo id do processo é inconveniente, você pode usar o comando pkill. Ele procura os processos que correspondem a um padrão e o mata. A sintaxe para usar o comando pkill é:

pkill <options> <pattern>

Algumas das opções comuns para emparelhar com o comando pkill são:

Opção Descrição
-n Seleciona apenas os processos mais recentes que correspondem ao ID do processo
-u Seleciona os processos pertencentes a um usuário específico
-x Seleciona processos que correspondem exatamente ao padrão

Isso é particularmente importante quando vários usuários estão trabalhando em diferentes instâncias do mesmo programa no mesmo sistema e uma das instâncias começa a apresentar algum comportamento inesperado. Por exemplo, na captura de tela abaixo, estamos eliminando a instância “gedit” pertencente ao usuário ‘intel’ usando o comando pkill no Linux:

pkill -u intel gedit

Mate o processo gedit usando o comando pkill

Encerre o processo usando o comando killall

O killall comando funciona de forma semelhante ao kill comando, mas mata todos os processos correspondentes ao nome do processo, independentemente do usuário. Por padrão, ele envia o sinal SIGTERM se não for especificado de outra forma. Uma coisa interessante a notar é que o killall comando nunca pode matar a si mesmo, mas pode encerrar outras instâncias do killall comando. A sintaxe para usar o killall comando é:

killall <options> <process_name>

Algumas das opções para emparelhar com o comando killall são:

Opção Descrição
-r Interpreta o process_name como um padrão regex e, em seguida, mata os processos correspondentes ao padrão
-u mata o processo especificado pertencente a um proprietário especificado.
-o Mata os processos especificados mais antigos (iniciados antes) do que um horário específico.
-y Mata os processos especificados mais jovens (iniciados após) o tempo específico.

O comando killall pode ser útil para encerrar uma série do mesmo processo ou até mesmo todos os processos pertencentes a um proprietário específico. Aqui em nosso exemplo, estamos matando todos os processos de “dormir por 500 segundos” usando o comando killall no Linux:

killall -v sleep

matar todos os processos chamados sleep

Encerre o processo do Linux usando o comando top/htop

Esse método de matar processos é útil quando você não tem ideia de quais processos estão consumindo o máximo de recursos. Em ambos os comandos, você pode navegar por todos os processos em execução ou mesmo por processos zumbis e finalizá-los rapidamente. Para usar o comando top para monitorar seus recursos, use a sintaxe no Terminal:

top

Entendendo a saída:

A saída principal do comando top é dividida em colunas que são:

  1. PID – mostra o ID do processo em execução
  2. Do utilizador – mostra o dono do processo
  3. relações públicas – mostra o valor de prioridade do processo atribuído pelo sistema operacional
  4. NI – mostra os bons valores que são como atribuir valores espaçados pelo usuário para controlar manualmente a prioridade de uma tarefa.
  5. VIRT – mostra a quantidade de memória virtual usada pelo processo.
  6. res – mostra a quantidade de memória física usada pelo processo
  7. SHR – mostra a quantidade de memória compartilhada por outros processos
  8. S – mostra o estado atual do processo que pode ser:
    • D – sono ininterrupto
    • R – correndo
    • S- dormindo
    • T- parado
    • Z- zumbi
  9. %CPU – Mostra a quantidade de CPU utilizada pelo processo em porcentagem
  10. %MEM – Mostra a quantidade de RAM utilizada pelo processo em porcentagem
  11. TEMPO+ – Mostra o tempo total de execução do processo
  12. Comando – Mostra qual comando foi chamado para o processo.

Se você não souber o ID do processo da tarefa que deseja eliminar, navegue pela lista usando as teclas de seta ou procure o nome do processo na tabela de processos no Linux.

Para pesquisar o nome do processo, pressione ‘L’ no teclado e digite o nome do processo que deseja pesquisar. Depois de encontrar o processo nefasto, pressione ‘k’ no teclado para matar o processo. Agora, insira o ID do processo ou deixe-o no processo atualmente destacado e pressione ‘ENTER’. Em seguida, insira o sinal de término e pressione ‘ENTER’ para encerrar o programa. Para retornar ao terminal, pressione ‘q’ no teclado.

  • Como matar um processo no Linux
  • Como matar um processo no Linux
  • Como matar um processo no Linux

Apesar de top O comando mostra detalhes como ID do processo, consumo de memória e muito mais para todos os processos em execução, não é adequado para iniciantes, pois não mostra nenhum mapeamento de teclas ou como usá-lo. Por outro lado, o htop comando tem uma interface mais amigável, mesmo para uma ferramenta de linha de comando. Além disso, mostra todos os detalhes em uma exibição separada, portanto, não sobrecarrega a janela do terminal. Ele não vem pré-instalado na maioria das distros, e você precisa usar o seguinte comando para instalar htop no Linux:

sudo apt install -y htop

Para usar o htop para gerenciar processos no Linux, use o comando abaixo:

htop

Para matar um programa, navegue até o nome do processo que deseja encerrar, pressione ‘F9’ e pressione Enter. Se você precisar pesquisar e matar qualquer programa, pressione ‘F3’ no teclado, digite o nome e pressione Enter. O o nome do processo será destacadopressione F9 e, em seguida, pressione Enter no teclado para encerrar o processo.

  • Como matar um processo no Linux
  • Como matar um processo no Linux

Matar um processo via System Monitor no Linux

Se você acha que o método de linha de comando é difícil para você, pode usar a ferramenta integrada de monitoramento do sistema que está disponível em todas as distribuições do Linux. Para saber como funciona, abra a ferramenta de monitoramento do sistema no menu Aplicativos e siga as etapas abaixo.

1. Assim que a ferramenta de monitoramento do sistema for aberta, você verá três guias na parte superior denominadas — Processos, Recursos e Sistema de Arquivos. Para gerenciar seus processos, acesse o Aba “Processos”. Aqui, você verá todos os seus processos em execução no momento. Pressione ‘CTRL+F’ para procurar um nome de processo. Clique no nome do processo que deseja encerrar e clique em “Finalizar processo”.

Pesquisar processo usando o monitor do sistema

2. Em seguida, você receberá um prompt de confirmação se deseja encerrar o processo ou não. Vá em frente e clique no grande botão vermelho “Finalizar processo” para encerrar o processo no Linux.

matar processo usando o monitor do sistema

perguntas frequentes

Como faço para parar todos os processos no Linux?

Se você precisar interromper todos os processos (exceto o shell de login, init e processos específicos do kernel) para um usuário específico no Linux, use o comando pkill ou o comando killall de acordo com a sintaxe:

pkill -u <username>

killall -u <username>

Se você precisar matar todos os processos de todos os usuários, incluindo o sistema init, pressione as teclas ‘ALT + Prt Sc + o’ no teclado.

É correto encerrar um processo?

Ao fechar qualquer processo em segundo plano não essencial ou um processo de usuário que esteja consumindo muita memória do sistema, você libera os recursos que agora podem ser utilizados por outros processos. Porém, antes de encerrar qualquer processo, verifique se você não está eliminando um processo essencial do sistema operacional.

Quais são os processos em segundo plano no Linux?

No Linux, os processos em segundo plano são processos que podem ser executados sem a instância do shell ou qualquer intervenção do usuário. Eles podem ser visualizados usando qualquer um dos comandos – top, htop, ps, etc.

O que é um processo zumbi?

Um processo que foi eliminado pelo usuário, mas ainda está ocupando memória, é conhecido como processo zumbi.

O que CTRL + Z faz no Linux?

Quando você usa CTRL + Z no Linux, ele envia o sinal SIGTSTP que suspende o processo e o envia em segundo plano. Quando um processo está em um estado suspenso em segundo plano, você não pode matar o processo até que ele seja trazido de volta para o primeiro plano.

Mate processos no Linux facilmente

Matar processos que consomem muita memória é uma tarefa crucial que todo usuário deve aprender. Neste artigo, mostramos o método de linha de comando, incluindo comandos como killall e pkill, bem como os métodos GUI para eliminar processos no Linux. Até detalhamos como usar ferramentas populares como top e htop para gerenciar processos em seu PC Linux. Se você enfrentar algum problema ao usar essas ferramentas para encerrar um processo, informe-nos nos comentários abaixo.

Similar Posts

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *