¿Cómo enumerar los procesos en ejecución en Linux? (Lista de procesos de Linux)

Cada vez que abres una aplicación o ejecutas un comando en Linux — ya sea un navegador, un editor de código o un reproductor de música — se crea un nuevo proceso. Gracias a las capacidades multitarea de Linux, varios programas pueden ejecutarse al mismo tiempo sin interrumpirse entre sí. Para tener un control total de tu sistema, es esencial comprender cómo ver y gestionar estos procesos activos.

Esta guía detallada sobre cómo listar procesos en ejecución en Linux te muestra cómo utilizar eficazmente las herramientas de línea de comandos, interpretar sus resultados y optimizar la gestión del sistema con técnicas prácticas.

Comprensión de la lista de procesos en Linux

Un proceso es una instancia en ejecución de un programa, ya sea desde una aplicación o desde un comando en la terminal. Por ejemplo, al abrir Visual Studio Code se inicia un proceso que continúa hasta que cierras la aplicación. De manera similar, ejecutar un comando en la terminal crea un proceso que finaliza cuando el comando termina o se detiene.

Ver la lista de procesos en Linux con el comando ps (Listar procesos en ejecución en Linux)

En Linux, puedes ver los procesos activos usando el comando ps, que significa process status. Este comando muestra los procesos que se están ejecutando actualmente en tu sistema.

Para comenzar, abre tu terminal y escribe:

ps

Esto mostrará los procesos de tu shell actual, normalmente con cuatro columnas principales:

  • PID – el identificador único del proceso
  • TTY – el tipo de terminal en el que has iniciado sesión
  • TIME – el tiempo total de CPU usado por el proceso
  • CMD – el comando que inició el proceso

Filtrar procesos (Filtrar desde la lista de procesos en Linux)

El comando ps admite una gran variedad de opciones para filtrar y personalizar la salida. Las opciones comunes incluyen -A, -a, -C, -c, -d, -E, -e, -u, -X, -x, entre otras. Puedes combinar múltiples opciones, y ps mostrará todos los procesos que coincidan con cualquiera de los criterios especificados.

Para explorar todas las opciones en detalle, puedes consultar el manual ejecutando:

man ps

Listar procesos en ejecución (Mostrar procesos activos en Linux)

Si deseas ver todos los procesos en ejecución en el sistema, incluidos los de otros usuarios y los que no están vinculados a tu terminal, utiliza:

ps aux

Esto significa:

  • a – muestra procesos de todos los usuarios, no solo los tuyos
  • u – muestra el nombre de usuario asociado a cada proceso
  • x – incluye procesos sin terminal de control

La salida suele incluir estas columnas:

  • USER – usuario que ejecuta el proceso
  • PID – identificador del proceso
  • %CPU – porcentaje de uso de CPU
  • %MEM – porcentaje de uso de memoria
  • VSZ – tamaño de memoria virtual (en KB)
  • RSS – memoria residente
  • TT – terminal de control
  • STAT – estado del proceso
  • STARTED – hora de inicio del proceso
  • CMD – comando que inició el proceso

Con ps puedes obtener rápidamente una instantánea de la actividad del sistema y entender qué procesos consumen recursos, lo que lo convierte en una herramienta esencial para la administración del sistema.

Listar procesos en Linux: mostrar procesos con el comando top

El comando top proporciona una vista en tiempo real de los procesos del sistema, permitiéndote supervisar continuamente el uso de CPU y memoria. A diferencia del comando ps, que es estático, top se actualiza automáticamente y ofrece una visión actualizada del consumo de recursos y del rendimiento del sistema.

Por defecto, top ordena los procesos por uso de CPU, mostrando los que consumen más recursos en la parte superior. Para probarlo, simplemente abre la terminal y escribe:

top

Interactuar con procesos

El comando top también permite interactuar con los procesos en ejecución mediante atajos de teclado:

  • k – matar un proceso
  • r – cambiar la prioridad de un proceso
  • m – ordenar por uso de memoria
  • n – ordenar por PID
  • d – modificar el intervalo de actualización
  • h – mostrar la pantalla de ayuda
  • c – mostrar la ruta completa del comando
  • z – activar el modo de color para facilitar la visualización

Nota: estos comandos distinguen entre mayúsculas y minúsculas, así que asegúrate de que Caps Lock esté desactivado.

Para salir de top, simplemente presiona q.

Listar procesos en ejecución usando el comando htop en Linux

El comando htop es una alternativa interactiva y fácil de usar a top, que ofrece una forma visual más intuitiva de supervisar el rendimiento del sistema y gestionar los procesos en ejecución.

A diferencia de top, htop permite desplazarse vertical y horizontalmente para ver la lista completa de procesos y sus líneas de comando completas. También admite interacción con el ratón, lo que permite seleccionar, finalizar o ajustar prioridades sin escribir manualmente los PID. Gestionar múltiples procesos se vuelve mucho más sencillo con unos pocos clics.

Instalar htop en Linux

La mayoría de distribuciones Linux no incluyen htop por defecto, por lo que tendrás que instalarlo:

Para distribuciones basadas en Debian (por ejemplo, Ubuntu):

$ sudo apt install htop

Para distribuciones basadas en RHEL (por ejemplo, CentOS, Fedora):

$ sudo dnf install htop

Una vez instalado, ejecútalo escribiendo:

$ htop

Verás los procesos en una interfaz más limpia y organizada que top.

Atajos útiles de htop

El comando htop ofrece varios atajos de teclado para facilitar la gestión de procesos:

  • F1 – abrir el menú de ayuda
  • F2 – abrir las opciones de configuración
  • F3 – buscar un proceso específico
  • F4 – filtrar procesos por nombre
  • F5 – ver procesos en estructura de árbol
  • F6 – ordenar por cualquier columna
  • F7 – bajar la prioridad de un proceso
  • F8 – subir la prioridad de un proceso
  • F9 – terminar un proceso
  • F10 – salir de htop

Gracias a su interfaz interactiva y potentes funciones, htop es una excelente herramienta para supervisar y gestionar procesos en sistemas Linux.

Usar el comando pstree

El comando pstree visualiza los procesos como un árbol jerárquico, mostrando las relaciones padre-hijo. Esto ayuda a entender dependencias entre procesos, como servicios que generan otros procesos.

Para instalar pstree en Ubuntu/Debian:

$ sudo apt install psmisc

Para instalarlo en CentOS/RHEL/Fedora:

$ sudo dnf install psmisc

Para ver el árbol ejecuta:

pstree

Las opciones incluyen:

  • -p – mostrar identificadores de proceso
  • -u – mostrar propietarios de procesos
  • -h – resaltar procesos activos
  • -a – mostrar líneas de comando completas

Estos comandos ofrecen múltiples formas de supervisar, analizar y gestionar procesos Linux, desde instantáneas simples hasta vistas interactivas e históricas, ayudándote a mantener un sistema estable y eficiente.

Usar el comando atop (Lista de procesos en Linux)

En Linux, atop proporciona supervisión en tiempo real con registro histórico, lo que lo hace adecuado para análisis de rendimiento a largo plazo. A diferencia de top o htop, atop puede registrar procesos finalizados para su análisis posterior (registro predeterminado hasta 28 días).

Instalar atop en Ubuntu/Debian:

$ sudo apt install atop

Para instalar atop en CentOS/RHEL/Fedora:

$ sudo dnf install atop

Ejecutarlo:

$ atop

Puedes supervisar CPU, memoria, swap, disco y red en intervalos configurables. Las opciones y atajos más usados incluyen:

  • -i – promedios por segundo
  • -a – procesos activos durante intervalos
  • -c – mostrar línea de comando
  • -m – detalles de memoria
  • -d – uso de disco
  • -n – actividad de red
  • -s – información de planificación
  • -v – metadatos del proceso-y – información por hilos

Ordenar procesos por: a (actividad), c (CPU), d (disco), m (memoria), n (red).

Gestionar procesos en Linux

Una vez identificados los procesos en ejecución, el siguiente paso es gestionarlos para mantener el sistema funcionando correctamente. Esto puede implicar pausar, terminar o ajustar la prioridad de procesos.

Pausar o reanudar procesos

Para ver tareas en segundo plano, usa el comando jobs. Puedes traer un proceso al primer plano con:

fg <job_number>

En este comando, <job_number> corresponde al número listado por jobs.

Ajustar la prioridad de procesos

Para controlar la asignación de CPU, puedes cambiar la prioridad con el comando renice. Un valor de prioridad menor otorga más tiempo de CPU, mientras que un valor mayor reduce su asignación.

renice <priority> <PID>

Esto te permite optimizar el rendimiento del sistema priorizando tareas importantes y limitando el uso de recursos en procesos menos críticos.

Cómo matar un proceso en Linux

Para detener un proceso específico, usa el comando kill con su PID:

kill <PID>

Si necesitas terminar todos los procesos con el mismo nombre, killall es más práctico:

$ killall process_name

Conclusión

Supervisar los procesos es clave para mantener tu sistema Linux saludable y con buen rendimiento. Herramientas como ps, top, htop, atop y pstree permiten ver y seguir los procesos activos, ayudándote a identificar tareas que consumen recursos. Revisar los procesos regularmente garantiza que el sistema siga siendo eficiente y responda correctamente.

Experimenta un rendimiento VPS inigualable con BlueVPS.com, que ofrece un entorno cloud fiable y dedicado. Disfruta de una solución escalable y personalizable adaptada a tus necesidades, con tráfico ilimitado para mantener tus proyectos funcionando sin problemas. Toma el control de tu infraestructura hoy y desbloquea todo el potencial de tu VPS.

Blog