Cómo cancelar un proceso con el comando kill en Linux

Las tareas en Linux se denominan procesos. Cada proceso tiene una ID de proceso única. Para finalizar un proceso en Linux podemos usar el comando kill. En este tutorial, te mostraremos cómo cancelar un proceso utilizando comandos de Linux, para mejorar tus habilidades de administración de VPS.

A veces, puedes iniciar un servidor o una aplicación, olvidarte de él y después necesitar apagarlo. En estos escenarios, puedes usar el comando kill.

A continuación hay algunos ejemplos en los que el comando kill puede ser útil:

  • Para detener cualquier proceso automatizado.
  • Para detener un proceso que se ha iniciado por accidente.
  • Para detener un proceso que consume mucha memoria.
  • Para forzar la detención de cualquier proceso que se ejecute en Linux.
  • Para detener un proceso en segundo plano.

Además de detener un proceso, el comando kill tiene otras funciones. Como, por ejemplo, enviar una señal a un proceso. Por defecto, esto se toma como una señal TERM, la cual terminará el proceso.

Cómo mostrar el ID del proceso en Linux

El comando kill te permite terminar un proceso utilizando un ID de proceso específico, también conocido como pid. Para mostrar un pid en Linux, puedes ejecutar el siguiente comando:

ps

Esto listará todos los procesos disponibles y sus pid. Si deseas que tu lista sea más específica, agrega un comando grep como este:

ps -ux | grep java

Esto mostrará todos los procesos de Java que se ejecutan en la salida.

Cómo mostrar todas las señales del comando Kill

Hay múltiples señales disponibles en Linux que pueden usarse para interrumpir, finalizar o pausar procesos. El comando kill se puede usar de la siguiente manera:

kill -l

Este comando mostrará una página con las diferentes señales del comando kill, con sus nombres y números correspondientes. Si bien hay varias señales disponibles, en la mayoría de los casos se usa SIGKILL (9) y SIGTERM (15).

Cómo finalizar un proceso en Linux usando el terminal

Ahora sí estamos listos para seguir adelante y aprender los diferentes usos del comando kill. Para continuar, accede a tu servidor VPS usando SSH.

Usar el comando Kill con un PID

Para finalizar un proceso específico con un PID, usa el siguiente comando:

kill 63772

Aquí 63772 es el pid del proceso que queremos cancelar, puedes reemplazarlo por el pid que corresponda. Como no se especifica ninguna señal, esta será una señal SIGTERM. A veces, esto puede no funcionar; en ese caso, quizás tengas que forzar la cancelación del proceso.

Para eso puedes usar el formato del comando kill  que se muestra a continuación:

kill [Señal_u_Opción] pid

Te damos un ejemplo de cómo cerrar forzadamente un proceso haciendo uso de dicho formato:

kill SIGKILL 63772

Del mismo modo, si quieres una versión más corta de este comando puedes usar:

kill -9 63772

Como mencionábamos antes, debes reemplaza 63772 con el pid correspondiente para que el proceso finalice.

Cómo cancelar múltiples procesos en Linux

Con kill de Linux también puedes finalizar múltiples procesos. La sintaxis para el comando en este caso sería:

kill -9 pid1 pid2 pid3

Te damos un ejemplo de cómo se vería al aplicarlo:

kill -9 63772 45116 23465

Cómo finalizar un proceso en Linux usando el comando Pkill

Pkill es una variación del comando kill. Con esta variación puedes especificar el nombre del proceso o un patrón para encontrar un proceso:

pkill chrome

El comando anterior cerrará el navegador Chrome. También puedes especificar una coincidencia parcial del nombre del proceso en la línea de comando. Ejemplo:

pkill chr

Sin embargo, este comando tiene asociado el riesgo de cancelar el proceso incorrecto, especialmente cuando hay múltiples procesos con el mismo nombre.

Puedes consultar la lista de procesos que el comando podría considerar utilizando el nombre completo del proceso:

pidof chrome

Este comando se puede usar cuando conoces el nombre completo del proceso.

También puedes verificar los procesos coincidentes con un nombre parcial:

pgrep -l chr

Este comando listará los procesos que coincidan con “chr”, junto al ID del proceso.

Cómo cancelar un proceso en Linux usando el comando Killall

La diferencia básica entre killall y kill es que killall puede terminar el proceso por nombre mientras el comando kill usa el pid.

Un ejemplo de este comando es:

killall chrome

Esto es similar a pkill. Sin embargo, killall hace una coincidencia de nombre exacto, mientras que pkill puede hacer una coincidencia de patrón. Esta es una de las razones por las que killall es más seguro en comparación con pkill.

Una diferencia más es el paquete raíz al que pertenecen estos comandos. En Linux, killall pertenece al paquete psmisc. Mientras que, por otro lado, comandos como ps, top, kill, pkill pertenecen al paquete procps.

Otra diferencia es que killall se puede personalizar para finalizar procesos basados ​​en marcas de tiempo. En caso de que desees eliminar un proceso específico que se haya estado ejecutando durante menos de 40 minutos, puedes usar:

killall -y 40m [Nombre_de_proceso>]

De manera similar, puedes usar las siguientes opciones junto al comando killall:

  • s – segundos
  • m – minutos
  • h – horas
  • d – días
  • w semanas
  • M – meses
  • y – años

Conclusión

Con este tutorial cubrimos el comando kill junto a sus variaciones más importantes y útiles. Para obtener más información sobre esta herramienta esencial, puedes consultar el manual de Linux. ¡Buena suerte con tu proyecto, nos vemos en el próximo tutorial!

Author
El autor

Deyimar A.

Deyi es una entusiasta del marketing digital, con experiencia en diseño de páginas web, creación de contenido, copywrite y SEO. Forma parte del equipo de SEO & Localization de Hostinger. En su tiempo libre, le gusta desarrollar proyectos, leer un libro o ver una buena película.