/ Mar 06, 2026
Trending
Aunque Linux es conocido por ser un sistema mucho más estable y fiable que Windows, como cualquier sistema también puede llegar a fallar. Hay programas, y procesos, que se pueden quedar bloqueados y hacer que, o bien el uso de la memoria o de la CPU del ordenador se dispare mientras intenta recuperar el control del proceso, o directamente que el sistema se bloquee por completo y no podamos interactuar con él. Linux ofrece a los usuarios más experimentados varias formas de solucionar esto. Y hoy vamos a explicar una de las más conocidas: el comando kill.
Kill, como podemos imaginar, es un comando que, al ejecutarlo, estamos mandando «matar» a un proceso. Esto forzará al sistema a deshacerse de él, aunque esté bloqueado, y nos permitirá recuperar el control del sistema sin necesidad de tener que realizar. Se trata de un comando que hay que ejecutar desde un terminal, por lo que lo primero que tenemos que hacer es abrir una ventana de Terminal, o TTY, desde donde podremos ejecutar comandos.
Cuando la interfaz gráfica (GUI) se congela y deja de responder, el primer paso es acceder a una consola virtual de texto (TTY). O, en su defecto, podemos conectarnos desde otro ordenador (por ejemplo, un PC con Windows) mediante SSH para tomar el control del sistema y poder ejecutar estos comandos.
Para cambiar a un TTY de Linux, podemos hacerlo con el atajo de teclado «Ctrl + Alt + Fx» (pudiendo cambiar la «Fx» por F3, F4, F5 o F6). Linux nos pedirá nuestro usuario y nuestra contraseña. Tras escribirlos, tendremos ya acceso a una nueva consola del sistema. Para volver al TTY con interfaz gráfica, tenemos que pulsar el atajo de teclado Ctrl + Alt + F7 (o F1 / F2, en los sistemas más nuevos con Wayland).
Una vez que tengamos control dentro de un Terminal, de la forma que sea, lo siguiente será identificar el proceso que está funcionando mal. Para ello, debemos usar un administrador de tareas (nosotros recomendamos htop, ya que es uno de los mejores y más fáciles de usar) ejecutando «htop» en el terminal.
Podemos ordenar todos los procesos por uso de CPU o uso de memoria para encontrar cuál está causando el estrangulamiento del sistema. Una vez que lo tengamos a la vista, debemos fijarnos en el PID, ya que es el código que debemos mandar, junto al comando «Kill», para matar el proceso.
Truco: Si pulsamos F9 dentro de htop, podemos mandar una orden «kill» al proceso que tengamos seleccionado. Pero nosotros os vamos a explicar cómo funciona el comando como tal.
¿Y si el ordenador no tiene htop? No pasa nada. Linux nos ofrece otras muchas formas de conocer el PID de un proceso. Algunas de las más sencillas de usar son:
Este comando puede funcionar de varias formas. Por ejemplo, el comando killall seguido del nombre del proceso nos permitirá matar de un golpe todos los procesos que tengan el mismo nombre. Por ejemplo:
killall firefox
Si añadimos el parámetro -9, podemos forzar el cierre, muy útil cuando está bloqueado del todo el proceso:
killall -9 firefox
¡Atención al usar killall! Este comando es potente pero indiscriminado. Si ejecutamos «killall firefox», este cerrará todas las ventanas y procesos de Firefox, sin distinción. Antes de usarlo, debemos asegurarnos de que no hay trabajos importantes sin guardar en ninguno de ellos.
Si queremos ser más precisos, el comando kill nos permite matar procesos concretos mediante su ID. Por ejemplo, podemos forzar el cierre de un proceso cuyo ID es 1234 con:
kill 1234
O forzar su cierre con:
kill -9 1234
Aviso: Es vital entender la diferencia entre las señales de terminación. Por defecto, kill [PID] envía la señal SIGTERM (15), que es una solicitud «educada» para que el proceso se cierre, permitiéndole guardar datos y limpiar recursos. En cambio, kill -9 [PID] envía SIGKILL (9), una «terminación forzosa» e inmediata que no puede ser ignorada. Por lo tanto, solo debemos usar SIGKILL como último recurso, ya que puede causar una corrupción de datos y dejar el sistema en un estado inestable, e incluso bloqueado.
Además de los dos comandos agresivos que acabamos de ver, también podemos hacer uso de otros mucho más ligeros. Por ejemplo, podemos ejecutar «kill -1 [PID]» para mandar una orden SIGHUP (1) al comando de manera que, en vez de reiniciarse a la fuerza, se le indique a un servicio que recargue su fichero de configuración sin necesidad de reiniciarse. O también usar las órdenes SIGSTOP (19) o SIGCONT (18), que permiten pausar (congelar) un proceso sin terminarlo «kill -19 [PID]» y reanudarlo más tarde «kill -18 [PID]«. Muy útil para liberar recursos temporalmente.
Aunque estas herramientas resuelven bloqueos puntuales, como medida de mantenimiento preventivo, es recomendable programar reinicios periódicos para liberar recursos de memoria no devueltos por las aplicaciones y aplicar actualizaciones críticas del kernel que requieran un nuevo arranque.
Ir a la fuente
Author: Rubén Velasco