Comando Top

Tutorial | Comandos en GNU/Linux

El comando top en Linux es una herramienta de línea de comandos que permite ver información en tiempo real sobre los procesos que se están ejecutando en el sistema, así como el uso de CPU, memoria y otros recursos del sistema. top proporciona una lista de procesos y su estado actual, como la cantidad de CPU y memoria que están utilizando, y los muestra en una tabla actualizada en tiempo real.

Ejecutar por primera vez el comando top en Linux

Abra una terminal

Una terminal es una ventana de línea de comandos en la que puede interactuar con su sistema operativo. Puede abrir una terminal en Linux de varias maneras, incluyendo el uso de un atajo de teclado como Ctrl + Alt + T o buscando "terminal" en el menú de aplicaciones.

Escriba el comando

Una vez que haya abierto la terminal, simplemente escriba top en la línea de comandos y presione Enter. Esto ejecutará el comando top y comenzará a mostrar información en tiempo real sobre los procesos en ejecución en el sistema.

Observar la salida

Después de ejecutar el comando top, se mostrará una tabla en la que se enumeran los procesos en ejecución en su sistema. La tabla tendrá varias columnas que proporcionan información sobre cada proceso, incluyendo el nombre del proceso, el ID del proceso, el uso de CPU, el uso de memoria y otros recursos. La tabla también puede incluir información sobre la carga del sistema, el uso de la memoria y la actividad de la E/S de disco.

Salir del comando

Para salir del comando top, simplemente presione la tecla q. Esto detendrá la ejecución de top y lo devolverá a la línea de comandos en la terminal.

Usos más frecuentes del comando top

Monitorear el uso de recursos del sistema

El comando top es una herramienta útil para monitorear el uso de recursos del sistema, como el uso de CPU, memoria, swap y E/S de disco. Muestra información en tiempo real sobre el uso actual de estos recursos y puede ayudar a identificar cuellos de botella y problemas de rendimiento.

El siguiente comando muestra el uso de recursos del sistema en tiempo real:

top

Esto muestra una tabla que se actualiza continuamente y muestra información sobre el uso de CPU, memoria, swap y E/S de disco.

Identificar procesos que consumen muchos recursos

El comando top enumera los procesos que se están ejecutando en el sistema y muestra cuánto CPU, memoria y otros recursos están utilizando. Al ordenar por el uso de recursos, top puede ayudar a identificar los procesos que están consumiendo muchos recursos y que pueden estar causando problemas de rendimiento en el sistema.

El siguiente comando muestra los procesos que están utilizando la mayor cantidad de CPU:

top -o %CPU

Esto ordena los procesos por uso de CPU y muestra los procesos que están utilizando la mayor cantidad de CPU en la parte superior de la tabla.

Controlar el estado de los procesos

El comando top muestra el estado de los procesos, como en ejecución, suspendido o en espera. También puede detener o renice procesos en tiempo real desde la tabla de top. Esto puede ser útil para monitorear procesos que pueden estar congelados o atascados en el sistema y tomar medidas para solucionar el problema.

El siguiente comando muestra los procesos en ejecución y permite seleccionar un proceso para controlarlo:

top

Luego, puede seleccionar un proceso presionando la tecla k y luego ingresando el PID del proceso. Esto le permite enviar señales al proceso, como detenerlo (SIGSTOP) o continuar la ejecución (SIGCONT).

Monitorear la carga del sistema

El comando top muestra la carga del sistema, que es la cantidad de trabajo que está siendo procesado por el sistema en un momento dado. La carga se mide en términos de promedio de carga, que es el número de procesos que están en cola para ser procesados. Puede ser útil monitorear la carga del sistema y ajustar la configuración del sistema para mejorar el rendimiento.

El siguiente comando muestra la carga promedio del sistema en los últimos 1, 5 y 15 minutos:

top -b -n 1 | head -n 1

Esto muestra una línea que indica la carga promedio del sistema en los últimos 1, 5 y 15 minutos.

Identificar procesos que consumen mucha CPU

El comando top ordena los procesos por uso de CPU, lo que puede ayudar a identificar procesos que están consumiendo mucha CPU y que pueden estar causando problemas de rendimiento en el sistema. También puede mostrar cuánto tiempo de CPU se ha utilizado para cada proceso, lo que puede ser útil para identificar procesos que están utilizando la CPU durante períodos prolongados.

El siguiente comando muestra los procesos que están utilizando la mayor cantidad de CPU y cuánto tiempo de CPU han utilizado:

top -o %CPU -c

Esto ordena los procesos por uso de CPU y muestra los procesos que están utilizando la mayor cantidad de CPU en la parte superior de la tabla, junto con la cantidad de tiempo de CPU que han utilizado.

Opciones del comando top

-d

Establece el intervalo de actualización en segundos. Por ejemplo,

top -d 5

actualizará la tabla cada 5 segundos. Puede ser útil si desea monitorear el uso de recursos del sistema en tiempo real, pero no desea que la tabla se actualice con demasiada frecuencia y ralentice el sistema.

-n

Establece el número de actualizaciones que se mostrarán antes de salir. Por ejemplo,

top -n 10

mostrará 10 actualizaciones antes de salir. Puede ser útil si desea monitorear el uso de recursos durante un período de tiempo específico y luego salir automáticamente.

-u

Muestra solo los procesos que pertenecen al usuario especificado. Por ejemplo,

top -u root

mostrará solo los procesos que pertenecen al usuario root. Puede ser útil si desea monitorear solo los procesos de un usuario específico.

-p

Muestra solo el proceso con el ID de proceso (PID) especificado. Por ejemplo,

top -p 1234

mostrará solo el proceso con el PID 1234. Puede ser útil si desea monitorear un proceso específico y su uso de recursos.

-o

Ordena la tabla por el campo especificado. Por ejemplo,

top -o %CPU

ordenará la tabla por uso de CPU. Puede ser útil si desea ver los procesos que consumen la mayor cantidad de recursos en la parte superior de la tabla.

-b

Inicia top en modo batch, lo que significa que la salida se imprimirá sin actualizaciones en tiempo real y se guardará en un archivo de texto. Puede ser útil si desea monitorear el uso de recursos del sistema durante un período de tiempo específico y luego analizar los resultados más tarde. Por ejemplo,

top -b -n 10 > ~/resultado_top.txt

iniciará top en modo batch y guardará la salida en un archivo de texto llamado resultado_top.txt.

-c

Muestra la línea de comando completa de cada proceso en lugar de solo su nombre. Puede ser útil si desea ver qué comandos están ejecutando los procesos. Por ejemplo,

top -c

mostrará la línea de comando completa de cada proceso en lugar de solo su nombre. También si nos interesan los procesos relacionados a python, hacemos:

top -c -p $(pgrep -d ',' -f python)

H

Muestra los procesos secundarios (hilos) en lugar de los procesos principales. Puede ser útil si desea ver qué hilos están ejecutando los procesos. Por ejemplo,

top -H

mostrará los procesos secundarios (hilos) en lugar de los procesos principales.

z

Cambia el color de fondo de la tabla para facilitar la lectura. Puede ser útil si tiene dificultades para distinguir entre los diferentes procesos en la tabla. Por ejemplo,

top -z

cambiará el color de fondo de la tabla para facilitar la lectura.

Preguntas frecuentes sobre el comando top

¿Cómo filtrar los procesos en top?

Una forma es usando la opcion -u al iniciar top.

$ top -u nombre_usuario
Tutorial | Comandos en GNU/Linux