https://esgeeks.com/?p=5662
Cómo usar Kill, Pkill y Killall para matar cualquier proceso de Linux
5 (100%) 11 voto[s]

Aprende de manera fácil, cómo usar los comandos Kill, Pkill y Killall para matar cualquier proceso de Linux desde la terminal.

UNIX trata todos los objetos del sistema operativo como un archivo. Podemos encontrar los archivos asociados con cada acción realizada y usarlos para diferentes manipulaciones relacionadas con el sistema o el proceso.

Un proceso, también conocido como una tarea, es la forma en ejecución de un programa. Los programas se almacenan en el disco y los procesos se ejecutan en la memoria. Los procesos tienen una relación padre/hijo. Un proceso puede generar uno o más hijos. Se pueden ejecutar múltiples procesos en paralelo.

1. Obtener el PID de cualquier proceso/tarea

Si deseas ver el PID (Process ID) de cualquier proceso en ejecución, tengo para ti las 4 mejores maneras a través de las cuales puedes obtener fácilmente el PID de todos los procesos en ejecución.

  • Con el comando pidof, simplemente debes mencionar el nombre del proceso que enumera todos los PID asociados con ese proceso.
pidof [nombre_proceso]
  • Para el comando pgrep, la sintaxis es la misma que pidof pero mostrará todos los PID en modo vertical.
pgrep [nombre_proceso]
Comando pidof y pgrep para listar PID

Comando pidof y pgrep para listar PID

  • Con el comando pstree, se genera la lista de procesos organizada en un patrón similar a un árbol que muestra las relaciones padre/hijo entre los procesos.

Entonces, por ejemplo, si deseas finalizar el servicio de Apache, simplemente anota la ID del proceso principal del Servicio de Apache (4509) y elimina directamente utilizando los comandos kill, killall o pkill.


pstree -p | grep "[nombre_proceso]"
  • Y por último, pero no menos importante, lo mismo se puede hacer con la ayuda del comando ps como se muestra a continuación:
ps aux | grep "[nombre_proceso]"
Comando pstree y ps para listar PID

Comando pstree y ps para listar PID

2. Comando Kill

Este comando simplemente envía una señal para terminar uno o más identificadores de proceso (Process ID). Debe ser propietario del proceso o ser un usuario privilegiado. Si no se especifica ninguna señal, se envía TERM.

Comando Kill para matar procesos

Comando Kill para matar procesos

Por ejemplo, si deseas finalizar el proceso de Apache, debes mencionar el PID del Servicio de Apache, que ya descubrimos desde el primer comando.

kill <PID>

Además, incluso puedes verificar el estado de Apache Service si tu servicio se ha detenido o no, escribiendo “service apache2 status” o “pstree -p | grep apache2” (Si no muestra salida, significa que el servicio no se está ejecutando)


3. Comando Pkill

pkill significa process kill y es una utilidad de línea de comando que permite a los usuarios matar o terminar el proceso en Linux a través de PID o nombre del proceso. Toma nota, pkill eliminará todos los procesos que coincidan con el nombre del proceso. Permite patrones extendidos de expresión regular y otros criterios coincidentes.

Por ejemplo, si deseas eliminar todos los procesos de apache, el comando es:

pkill -e apache

Donde -e significa modo echo.

Y vuelve a ejecutar el comando pstree una vez más para verificar si el proceso ha finalizado o no.

Comando Pkill para matar procesos

Comando Pkill para matar procesos

4. Comando Killall

El único beneficio de usar este comando killall es que puedes matar cualquier proceso con solo el nombre del comando. Si más de un proceso está ejecutando el comando especificado, matará a todos.

Por ejemplo, si deseas finalizar el servicio de Apache, el comando es:

killall -v apache2

Donde -v representa el modo verbose/detallado.

¿Qué te parecieron éstos comandos presentados? Si te ha sido útil, por favor, no dudes en compartirlo en tus redes sociales :’)


¡Mantente actualizado!

Suscríbete a nuestro boletín semanal...

Suscríbete a nuestro boletín electrónico para recibir artículos útiles y ofertas especiales. No te perderás absolutamente de nada!

Enviaremos solamente boletines al email y no compartiremos tu email.