Cómo gestionar procesos en Linux con htop

Resumen

Gestionar procesos en Linux es una habilidad esencial para cualquier persona que administre servidores, automatice tareas o desarrolle software en este sistema operativo. Aquí aprenderás qué es un proceso, cómo listarlo, monitorearlo en tiempo real y terminarlo cuando deja de responder, todo desde la terminal.

¿Qué es un proceso en Linux y por qué importa monitorearlo?

Un proceso es un programa o script en ejecución que está consumiendo recursos del CPU y la memoria de tu computadora. A diferencia de Windows, donde abres el administrador de tareas con un par de clics, en Linux la gestión ocurre desde la terminal con comandos específicos.

¿Qué es un proceso? Es un programa o script en ejecución que utiliza recursos del sistema, como CPU y memoria, mientras está activo.

Entender esto te permite diagnosticar fallos, liberar memoria y recuperar el control cuando una aplicación deja de responder.

¿Cómo listo procesos con ps y ps aux?

El comando ps es el primer paso para ver qué se está ejecutando. Lo interesante es que por defecto solo te muestra los procesos de tu sesión actual de terminal, no los del sistema completo [00:54].

Si abres una segunda terminal con el editor Nano, y vuelves a la primera para correr ps, no verás Nano listado. Para tener el panorama completo necesitas la variante con opciones:

bash ps aux

Este comando lista todos los procesos activos en tu computadora, sin importar la terminal o el usuario. Si cierras la terminal donde corría Nano y vuelves a ejecutar ps aux, comprobarás que el proceso ya no aparece [01:42].

¿Qué hace el comando top y en qué se diferencia de htop?

El comando top te muestra los procesos en tiempo real, refrescando la pantalla constantemente. Aquí aparece un concepto fundamental: el PID o Process ID, el número único que identifica a cada programa en ejecución [02:30].

top también muestra datos importantes:

  • El usuario que está corriendo cada proceso.
  • La memoria RAM consumida por cada programa.
  • La memoria swap, que es la memoria de intercambio que Linux usa cuando la RAM se llena.
  • Cuánta memoria tienes libre y ocupada.

La interfaz de top es funcional pero algo difícil de leer. Para salir presionas Ctrl + C o la tecla Q.

¿Por qué htop es más amigable?

htop es la versión mejorada de top, donde la H significa human, una convención común en utilidades de Linux para indicar interfaces más legibles. Para instalarlo usas el manejador de paquetes apt:

bash sudo apt install htop

Una vez instalado, ejecutas htop y obtienes una interfaz interactiva con teclas de función:

  • F1 abre la ayuda.
  • F2 entra al menú de configuración.
  • F3 te permite buscar un proceso por nombre.
  • F5 muestra el árbol de procesos con sus hijos.
  • F10 cierra la herramienta.

La vista en árbol es útil cuando un programa lanza subprocesos. Piensa en el navegador de Google: cada pestaña genera un subproceso vinculado al proceso padre.

¿Qué es un PID en Linux? Es el Process ID, un número único que el sistema asigna a cada proceso en ejecución para poder identificarlo y manipularlo.

¿Cómo termino un proceso con el comando kill?

Cuando un programa deja de responder o necesitas liberar recursos, puedes terminarlo con el comando kill. La sintaxis es directa: necesitas el PID del proceso y una señal de término.

Primero localizas el PID, ya sea con ps aux o buscándolo con htop mediante F3. Por ejemplo, si Nano tiene el PID 50077, ejecutas:

bash kill -9 50077

El -9 es la señal más usada. Es una señal de terminación abrupta, ideal cuando un programa no responde y necesitas forzar el cierre. Cada número representa un tipo distinto de instrucción para el proceso [06:50].

Al ejecutar el comando, la terminal donde corría Nano mostrará el mensaje killed, confirmando que el proceso terminó.

¿Qué hace kill -9 en Linux? Envía una señal de terminación inmediata e incondicional al proceso indicado por su PID, forzando su cierre sin permitirle guardar cambios.

¿Qué riesgos tiene matar un proceso con kill?

Usar kill -9 cierra el programa sin darle oportunidad de guardar nada. Si terminas un editor de video en pleno render o un programa con archivos abiertos, puedes provocar:

  • Pérdida de información no guardada.
  • Archivos corruptos a medio escribir.
  • Trabajos incompletos en procesos largos.

Por eso, antes de matar un proceso, vale la pena intentar cerrarlo de forma normal y reservar kill -9 para emergencias reales.

Habilidades y conceptos clave que dominaste

A lo largo del recorrido aparecen varias herramientas y conceptos que conviene tener claros:

  • Proceso: programa o script en ejecución que consume recursos del sistema [00:11].
  • PID o Process ID: identificador único que Linux asigna a cada proceso [02:30].
  • ps: comando que lista procesos de la sesión actual [00:54].
  • ps aux: variante que muestra todos los procesos del sistema [01:21].
  • top: monitor de procesos en tiempo real [02:14].
  • htop: versión mejorada de top con interfaz interactiva [03:39].
  • memoria swap: memoria de intercambio que Linux usa como apoyo cuando la RAM se satura [02:55].
  • apt: manejador de paquetes para instalar software, como sudo apt install htop [03:45].
  • kill -9 PID: comando para terminar un proceso de forma abrupta [06:50].

Como reto, intenta terminar un proceso directamente desde htop sin salir a la terminal; la opción está a la vista en su menú inferior. ¿Cuál es el primer proceso que vas a monitorear en tu sistema? Cuéntame en los comentarios.