¿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