logo

Como matar um processo no Linux?

Em um sistema operacional, existem muitos programas que ocorrem na RAM do computador. Esses programas podem ser executados pelo próprio sistema operacional ou por um usuário, tais programas são chamados 'Processos .' Normalmente, um processo tem seu ciclo de vida e é encerrado sozinho quando é concluído ou quando o encerramos manualmente. Mas, às vezes, um processo pode travar devido a um erro no agendamento do processo ou por consumir muita RAM ou CPU. Nesses casos, precisamos encerrar os processos manualmente para evitar que nossa máquina desligue inesperadamente.

O Linux permite que várias ferramentas eliminem um processo errôneo. Para matar um processo, devemos ter as informações do processo, como PID, sinal e muito mais .

Localizando os processos

Para encerrar um processo, temos que acessar as informações do processo. Existem vários comandos para rastrear um processo, como principal , obs: , pegada, e pidof.

O sistema Linux nos permite eliminar um processo de várias maneiras, como mate um processo por seu nome ou ID de processo (PID). Portanto, utilizaremos os comandos acima de acordo com nossa necessidade.

Localizando os processos pelo comando 'top'

O principal O comando é usado para listar todos os processos em execução em um sistema Linux. Ele exibe informações detalhadas como PID, nome de usuário, uso de CPU, hora, comando executado e muito mais.

Para localizar os processos, execute o comando da seguinte forma:

como encontrar coisas escondidas no Android
 top 

O comando acima exibirá os processos em execução. Considere a saída abaixo:

Matar Processo Linux

Podemos navegar pelos processos rolando para cima e para baixo no terminal. O comando top fornece vários filtros para filtrar os processos, como nome do processo, uso da CPU e muito mais. Para sair da seção superior, pressione o botão 'q' chave, ela o levará de volta ao terminal. No entanto, também podemos usar a opção de saída tradicional pressionando CTRL + C chaves.

Localizando os processos pelo comando ps e grep

O obs: O comando é outra maneira de exibir as informações do processo. Existem muitas opções usadas com o comando ps, como para, que significa:

a : Para exibir os processos para todos os usuários

em : Para exibir os processos usados ​​por determinado usuário

x: Para mostrar todos os processos. Se não especificarmos a opção x, o processo GUI não será exibido.

Execute o comando abaixo para listar todos os processos em execução:

 ps aux 

Considere a saída abaixo:

Matar Processo Linux

A saída do comando ps é semelhante ao principal comando. O nome do processo e o PID são fornecidos nas duas primeiras colunas, e o nome do processo é fornecido na coluna da direita.

O comando ps é mais útil que o comando top. Isso nos permite filtrar a saída com o comando grep.

Suponha que queiramos filtrar todo o processo com o nome de usuário javatpo+, execute o comando da seguinte forma:

 ps aux | grep javatpo+ 

O comando acima irá filtrar todo o processo especificado pelo comando grep. Considere a saída abaixo:

Matar Processo Linux

A saída acima fornece o comando ps, bem como a funcionalidade do comando grep juntos.

Localizando o processo pelo comando pidof e pgrep

O pidof O comando também nos permite localizar o processo. Se quisermos rastrear um processo pelo seu nome, o comando pidof será muito útil. Exibe os PIDs dos processos quando é usado com o nome do processo.

Para localizar o PID de um processo, execute o comando pidof da seguinte forma:

 pidof process_name 

Se tivermos o processo em execução com nome exato cromada , execute o comando da seguinte maneira para obter seus PIDs.

 pidof chrome 

considere a saída abaixo:

Matar Processo Linux

Matando um Processo

Agora que rastreamos os processos, podemos encerrar um processo. Existem vários comandos que são usados ​​para encerrar um processo, como matar , matar , principal, e matar.

Antes de matar um processo, é necessário saber quais processos podemos matar. Abaixo estão alguns pontos essenciais sobre processos de matança:

  • Se você for um usuário normal, só poderá encerrar os processos que pertencem a você. Você não pode encerrar os processos em execução por outros usuários. O principal e ps para comandos exibem os usuários com o processo relacionado.
  • Um usuário root pode encerrar todos os processos. No entanto, também podemos adicionar sudo antes de qualquer comando para executá-lo como root.
  • No Linux, quando um processo está sendo eliminado, um sinal especial é transmitido aos processos. Embora existam vários tipos de sinais no Linux, neste caso, o Linux lida com o SIGKILLS e PRAZO sinais. Por padrão. O Linux envia o SIGTERM, que encerra o processo normalmente. Se você quiser encerrar um processo à força, use SIGKILL.
  • O Linux mantém o status dos processos até que seja completamente removido do sistema. Assim, os processos filhos serão exibidos na lista de processos até que um processo pai seja excluído.
  • Não podemos matar um processo se ele estiver em 'sono ininterrupto .' Esta situação ocorre quando um processo executa uma operação de entrada/saída. Este estado pode ser visto no 8ºcoluna de principal e ps para o comando.

Matando um processo pelo comando killall

O comando killall é a técnica mais fácil para encerrar um processo se você souber o nome exato do processo, ele não estiver sendo executado por nenhum outro usuário e não estiver no estado Z ou D. No comando kill all, não há necessidade de localizar o processo ou PID. Para encerrar um processo, execute o comando da seguinte forma:

 killall firefox 

O comando acima encerrará o processo e encerrará o navegador Firefox. Considere a saída abaixo:

Matar Processo Linux

Se o comando encerrar o processo com sucesso, ele não fornecerá nenhuma saída.

Para encerrar o processo à força, execute o comando killall com -SIGKILL da seguinte forma:

 killall -SIGKILL process_name 

também podemos usar -9 em vez de -SIGKILL.

Para encerrar um processo interativamente, execute o comando da seguinte forma:

 killall -i process_name 

Para encerrar um processo como um usuário diferente, execute o comando da seguinte forma:

 sudo killall process_name 

Também podemos encerrar um processo por um período de tempo fixo usando -o e -e bandeiras. Para encerrar um processo que está em execução há mais de 20 minutos, execute o comando abaixo: killall -o 20m process_name

Para encerrar um processo que está em execução há menos de 20 minutos, execute o comando abaixo:

 killall -y 20m process_name 

As abreviações para usar o período de tempo são as seguintes:

segundos: s

minutos: m

horas:h

dias: d

semanas: w

meses: M

anos: sim

Mate um processo pelo comando pkill

Às vezes não sabemos o nome exato do processo; nesse caso, o comando pkill será o utilitário mais útil para encerrar um processo. Ele nos permite encerrar um processo inserindo o nome correspondente do processo. Por exemplo, queremos eliminar todos os processos com o nome correspondente java, execute o comando da seguinte forma:

 pkill java 

ele fechará todos os processos que contêm o nome java. Da mesma forma, para encerrar um processo do Firefox, execute o comando da seguinte forma:

 pkill fire 

Considere a saída abaixo:

Matar Processo Linux

Se o comando pkill for executado com sucesso, ele não exibirá nenhuma saída.

Para encerrar um processo à força pelo comando pkill, execute-o da seguinte maneira:

 pkill -SIGKILL process_name<p></p> <p>we can also use -9 instead of -SIGKILL. </p>

Mate um processo pelo comando kill

O comando kill é o utilitário mais simples para encerrar um processo; tudo o que precisamos de um PID de um processo. Depois de obtermos o PID do processo, é um processo simples. Para encerrar um processo, execute o comando kill seguido de PID. Para localizar o PID de um processo, use o comando top ou ps aux, conforme explicado acima.

Para encerrar um processo com PID 5296, execute o comando da seguinte forma:

 kill 5296 

Para encerrar um processo à força, use a opção -SIGKILL ou -9:

 kill -SIGKILL 5296 

O comando acima encerrará o processo com PID 5296.

Mate um processo pelo comando superior

O comando top nos permite localizar e encerrar o processo. É um processo simples encerrar um processo usando o comando top. Primeiro, execute o comando superior para localizar o processo e pressione o K' chave enquanto o comando está em execução. Ele irá mergulhar você no modo de eliminação de processo, insira o PID do processo que você deseja eliminar. Considere a saída abaixo:

Matar Processo Linux

Como podemos ver na saída acima, existe uma opção 'PID para sinalizar/matar' para eliminar o processo da lista de processos acima. Digite o PID do processo e pressione DIGITAR chave.

Se deixarmos o PID em branco, o processo superior será encerrado.

Mate um processo pelo monitor do sistema

Também podemos encerrar um processo pelo ambiente gráfico do Linux chamado monitor de sistema. Para encerrar um processo por meio do monitor do sistema, siga as etapas abaixo:

Passo 1: Pesquise ou navegue no monitor do sistema e pressione Enter para abri-lo.

Passo 2: Ele listará todos os processos em execução do seu sistema Linux. Considere a imagem abaixo:

Matar Processo Linux

Etapa 3: Navegue pelo processo e clique com o botão direito nele que deseja encerrar.

Passo 4: Selecione a opção Matar. Além disso, podemos usar o CTRL+K chaves para matá-lo.