Búsqueda de sitios web

Cómo encontrar y eliminar procesos en ejecución en Linux


La gestión de procesos es uno de los aspectos importantes de la administración del sistema en Linux e incluye la eliminación de procesos mediante el comando kill.

En este tutorial, veremos cómo eliminar procesos menos productivos o no deseados en su sistema Linux.

¿Qué es un proceso en Linux?

Un proceso en un sistema Linux puede ser una ocurrencia en ejecución de una aplicación o programa. También puede referirse a los procesos como tareas que se ejecutan en el sistema operativo.

Cuando un proceso se está ejecutando, sigue cambiando de un estado a otro y un proceso puede estar en uno de los siguientes estados:

  1. En ejecución: significa que el proceso se está ejecutando o simplemente está configurado para ejecutarse.
  2. En espera: significa que el proceso está esperando un evento o un recurso del sistema para realizar una tarea.

Hay dos tipos de procesos de espera en Linux: interruptible e ininterrumpible.

Un proceso en espera que puede ser interrumpido por señales se llama Interruptible, mientras que un proceso en espera que espera directamente en condiciones de hardware y no puede ser interrumpido bajo ninguna condición se llama ininterrumpible.

  1. Detenido: significa que el proceso se ha detenido mediante una señal.
  2. Zombie: significa que el proceso se ha detenido abruptamente y está muerto.

Con esta breve descripción general, veamos ahora las formas de finalizar procesos en un sistema Linux. Ya hemos cubierto algunos artículos sobre formas de eliminar los procesos en ejecución de Linux usando kill, pkill, killall y xkill, puede leerlos a continuación.

  1. Una guía para gestionar procesos de Linux mediante los comandos Kill, Pkill y Killall
  2. Cómo eliminar procesos de Linux que no responden usando el comando Xkill

Al matar procesos, el comando kill se utiliza para enviar una señal con nombre a un proceso o grupos de procesos con nombre. La señal predeterminada es la señal TERM.

Recuerde que el comando kill puede ser una función integrada en muchos shells modernos o externa ubicada en /bin/kill.

Cómo encontrar el PID de proceso en Linux

En Linux, cada proceso en un sistema tiene un PID (Número de identificación de proceso) que puede usarse para finalizar el proceso.

Puede identificar el PID de cualquier proceso utilizando el comando pidof de la siguiente manera:

pidof firefox
pidof chrome
pidof gimp-2.8

Cómo matar procesos en Linux

Una vez que encuentre el PID del proceso, veamos ahora cómo eliminar procesos. En este primer ejemplo, primero obtendré el PID del proceso y luego le enviaré una señal.

Quiero finalizar el proceso gimp, así que lo haré de la siguiente manera:

pidof gimp-2.8
kill 9378

Para verificar que el proceso ha finalizado, ejecute el comando pidof y no podrá ver el PID.

pidof gimp-2.8

También puede enviar una señal con nombre al proceso utilizando el nombre o los números de la señal de la siguiente manera:

pidof vlc
kill -SIGTERM 9541
pidof vlc

Usando el número de señal para matar un proceso:

pidof banshee
kill -9 9647
pidof banshee

En el ejemplo anterior, el número 9 es el número de señal para la señal SIGKILL.

Cómo eliminar varios PID de procesos en Linux

Para eliminar más de un proceso, pase los PID(s) al comando kill de la siguiente manera:

pidof gimp-2.8
pidof vlc
pidof banshee
kill -9 9734 9747 9762

Resumen

Hay muchas otras formas de finalizar procesos en Linux; estos pocos ejemplos solo ayudan a brindarle una descripción general de cómo finalizar procesos. ¿Háganos saber cómo se eliminan procesos en Linux? y también indique otras formas, si las hay, a través de comentarios.