El Linux top
El comando es uno de los incondicionales de los sistemas operativos tipo Unix. Su pantalla utilitaria está repleta de información útil sobre los procesos en ejecución de su sistema y el uso de recursos. Pero, ¿sabías que además admite color, resaltado e inclusive gráficos elementales?
Un panel repleto de información
los top
mando ha existido desde 1984, y hay muchas variantes. Para este post, estamos ejecutando Ubuntu 18.04 con todos los parches aplicados y la versión 3.3.12 de top
. Además hicimos referencias cruzadas de todo en otras dos computadoras de prueba, una que ejecuta Fedora y la otra Manjaro.
El valor por defecto top
mostrar tanta información como sea factible en la ventana de la terminal. La información es un requisito previo para la administración, por lo que esto es algo bueno. Una de las características de un buen administrador de sistemas es la capacidad de identificar problemas emergentes y tratarlos antes de que afecten al servicio. top
le ofrece un panel de muchas métricas de sistema diferentes que le ayudarán a hacer exactamente eso.
La pantalla se describe mejor como funcional, en lugar de intuitiva, y abundan las abreviaturas. Cuando te encuentras por primera vez top
, se siente estrecho, críptico y desagradable. A pesar de esto, con algunas pulsaciones de teclas, puede ajustar el contenido y el formato de la pantalla de acuerdo con lo que es esencial para usted.
Verifique su versión de top
Para chequear qué versión de top tienes, escribe lo siguiente en una ventana de terminal:
top -v
Si su versión está muy por detrás de la 3.3.12, es factible que no admita todas las funciones que vamos a cubrir.
La pantalla predeterminada
Tu puedes comenzar top
escribiendo lo siguiente y presionando «Enter»:
top
La pantalla predeterminada contiene dos áreas de información: el área de resumen (o tablero) y el área de tareas (o lista de procesos). Por defecto, top
actualiza su pantalla cada tres segundos; notará un ligero parpadeo cuando lo haga.
La primera línea de números en el tablero incluye el tiempo, cuánto tiempo ha estado funcionando su computadora, la cantidad de personas que han iniciado sesión y cuál ha sido el promedio de carga durante los últimos uno, cinco y 15 minutos. La segunda línea muestra la cantidad de tareas y sus estados: en ejecución, detenidas, durmiendo o zombies.
La tercera línea muestra los siguientes valores de la unidad central de procesamiento (CPU):
- nosotros: Cantidad de tiempo que la CPU dedica a ejecutar procesos para personas en el «espacio de usuario».
- sy: Cantidad de tiempo dedicado a ejecutar procesos de «espacio de kernel» del sistema.
- ni: Cantidad de tiempo dedicado a ejecutar procesos con un valor agradable establecido manualmente.
- identificación: Cantidad de tiempo de inactividad de la CPU.
- Washington: Cantidad de tiempo que la CPU pasa esperando que se complete la E / S.
- Hola: Cantidad de tiempo dedicado al mantenimiento de interrupciones de hardware.
- si: Cantidad de tiempo dedicado a dar servicio a interrupciones de software.
- S t: Cantidad de tiempo perdido debido a la ejecución de máquinas virtuales («tiempo de robo»).
La cuarta línea muestra la cantidad total (en kibibytes) de memoria física, y cuánto está libre, usado y almacenado en búfer o en caché.
La quinta línea muestra la cantidad total (además en kibibytes) de memoria de intercambio y la cantidad libre, utilizada y disponible. Este último incluye memoria que se espera sea recuperable de cachés.
Los encabezados de columna en el listado de procesos son los siguientes:
- PID: Identificacion de procedimiento.
- USUARIO: El dueño del procedimiento.
- PR: Procedimiento prioritario.
- NI: El buen valor del procedimiento.
- VIRT: Cantidad de memoria virtual utilizada por el procedimiento.
- RES: Cantidad de memoria residente utilizada por el procedimiento.
- SHR: Cantidad de memoria compartida utilizada por el procedimiento.
- S: Estado del procedimiento. (Consulte la lista a continuación para conocer los valores que puede tomar este campo).
- %UPC: El porcentaje de tiempo de CPU utilizado por el procedimiento desde la última actualización.
- % MEM: La parte de memoria física utilizada.
- TIEMPO +: Tiempo total de CPU utilizado por la tarea en centésimas de segundo.
- MANDO: El nombre del comando o la línea de comando (nombre + opciones).
Los valores de memoria se muestran en kibibytes. los COMMAND
La columna está fuera de la pantalla, a la derecha; no encajaba en la imagen de arriba, pero la veremos en breve.
El estado del procedimiento puede ser uno de los siguientes:
- D: Sueño ininterrumpido
- R: Corriendo
- S: Dormido
- T: Trazado (detenido)
- Z: Zombi
Presione Q para salir top
.
Desplazamiento de la pantalla
Puede presionar las flechas Arriba o Abajo, Inicio, Fin y Página Arriba o Abajo para moverse hacia arriba y hacia abajo y entrar a todos los procesos.
Presione la flecha hacia la izquierda o hacia la derecha para mover la lista de procesos hacia los lados. Esto es útil para ver las columnas que no encajan dentro de los límites de la ventana de la terminal.
En la imagen de abajo, hemos presionado la flecha derecha varias veces para ver la COMMAND
columna.
Cambio de las unidades numéricas
Cambiemos las unidades de visualización a valores sensibles. Presione E mayúscula para recorrer las unidades utilizadas para mostrar los valores de memoria en estas opciones: kibibytes, mebibytes, gibibytes, tebibytes, pebibytes y exbibytes. La unidad en uso es el primer elemento de las líneas cuatro y cinco.
Presione la «e» minúscula para hacer lo mismo con los valores en el listado de procesos: kibibytes, mebibytes, gibibytes, tebibytes y pebibytes.
Pulsamos E para configurar las unidades de memoria del tablero en gibibytes y «e» para configurar las unidades de memoria de la lista de procesos en mebibytes.
Cambiar el contenido del resumen
Puede cambiar la configuración de visualización de las líneas en el tablero o eliminarlas por completo.
Presione l para activar o desactivar la línea de resumen de carga (la primera línea). Eliminamos la línea de resumen de carga en la imagen a continuación.
Si dispones de un CPU de varios núcleos, presione 1 para cambiar la pantalla y ver las estadísticas individuales de cada CPU. Hay cuatro CPU en nuestra computadora. Pulsamos 1 para ver qué tan duro está trabajando cada uno de ellos.
De todos modos, esto ocupa más espacio en la pantalla dentro de la ventana del terminal.
Puede presionar «t» para cambiar las pantallas de la CPU a simples ASCII gráficos que muestran el porcentaje de uso de cada CPU.
Para cada CPU, top
muestra tres números y el gráfico. De izquierda a derecha, los números son los siguientes:
- El combinado
us
yni
porcentaje (espacio de usuario + tareas con configuraciones agradables no estándar). - los
sy
porcentaje (espacio del kernel). - El total (redondeado a un valor entero).
Presione “t” nuevamente para cambiar la visualización del gráfico a caracteres de bloque sólido.
Presione «t» una vez más para quitar la pantalla de la CPU y la línea de resumen de tareas por completo.
Presione “m” para recorrer la memoria e intercambiar líneas de memoria a través de diferentes opciones de visualización. La primera pulsación reemplaza las estadísticas con un gráfico ASCII.
Otra pulsación cambia el gráfico para bloquear caracteres.
Presione «m» una vez más para borrar las líneas de la CPU por completo.
Si lo desea, puede ver gráficos de CPU y memoria al mismo tiempo. Simplemente presione «t» y «m» hasta que obtenga la combinación que desea.
Color y resaltado
Puede presionar «z» para agregar color a la pantalla.
Cuando piensas en top
, probablemente no piense en pantallas de colores y gráficos ASCII, pero están integrados.
Presione «y» para resaltar las tareas en ejecución en el listado de procesos. Al presionar «x» se resalta la columna utilizada para ordenar la lista de procesos. Puede alternar entre resaltado de texto en negrita e invertido presionando «b».
Ordenar por columnas
De forma predeterminada, la lista de procesos se ordena por %CPU
columna. Puede cambiar la columna de clasificación presionando lo siguiente:
- PAG: los
%CPU
columna. - METRO: los
%MEM
columna. - NORTE: los
PID
columna. - T: los
TIME+
columna.
En la imagen siguiente, la lista de procesos está ordenada por PID
columna.
Ver la línea de comandos completa
Al presionar «c» se alterna la columna COMANDO entre mostrar el nombre del procedimiento y la línea de comando completa.
Para ver un «árbol» de procesos que fueron iniciados o generados por otros procesos, presione V.
Ver procesos para un solo usuario
Presione “u” para ver los procesos de un solo usuario. Se le pedirá el nombre o UID.
Escriba el nombre del UID de la persona que desea monitorear. Escribiremos «dave» y presionaremos «Enter». Ahora, los únicos procesos en el área de tareas pertenecen al usuario dave
.
Ver solo tareas activas
Presione I para ver solo las tareas activas.
No se mostrarán las tareas que no hayan consumido CPU desde la última actualización.
Determinar cuántos procesos mostrar
Presione “n” para limitar la visualización a un cierto número de líneas, sin tener en cuenta si las tareas están activas. Se le pedirá el número de procesos que se mostrarán.
Escribimos 10 y pulsamos Enter, por lo que aparecen 10 procesos en el área de tareas.
Renice un procedimiento
Puede presionar «r» para cambiar el valor agradable (prioridad) de un procedimiento. Se le pedirá el ID del procedimiento. Simplemente presione Entrar para utilizar el ID de procedimiento de la tarea en la parte de arriba de la ventana del procedimiento. Escribimos 7800, que resulta ser el ID de procedimiento de una instancia de Firefox.
Después de presionar Enter, se le solicitará el nuevo valor agradable para aplicar al procedimiento. Escribimos 15 y después pulsamos Enter.
El nuevo valor agradable se aplica al procedimiento de inmediato.
RELACIONADO: Cómo determinar prioridades de procedimiento con nice y renice en Linux
Mata un procedimiento
Presione «k» para matar un procedimiento. Después se le pedirá el ID de procedimiento que desea borrar. En realidad, puede enviar cualquier señal al procedimiento. Vamos a cerrar el procedimiento 7879, que ha dejado de responder.
Se le ofrecerá la posibilidad de escribir la señal que desea enviar. Puede especificarlo por nombre o número. Si simplemente presiona Enter, top
envía el SIGTERM
(matar) señal.
Tan pronto como presione Enter, la señal se envía al procedimiento.
RELACIONADO: Cómo matar procesos desde la terminal de Linux
Personalización de la pantalla
Además puede personalizar los colores y las columnas que se muestran. Vamos a cambiar el color que se utiliza para las indicaciones, cuyo valor predeterminado es el rojo.
Presione la Z mayúscula para ir a la página de configuración de color. La parte de arriba de la pantalla muestra los colores que usan los diferentes ítems de visualización. Para indicar qué elemento de la pantalla desea cambiar, presione una de las siguientes opciones, que distinguen entre mayúsculas y minúsculas:
- S: Área de resumen de datos.
- METRO: Mensajes y avisos.
- H: Encabezados de columnas.
- T: Información de la tarea en el listado de procesos.
Pulsamos M para cambiar las indicaciones.
Para seleccionar un color, presione uno de los siguientes números:
- 0: Negro.
- 1: Rojo.
- 2: Verde.
- 3: Amarillo.
- 4: Azul.
- 5: Magenta.
- 6: Cyan.
- 7: Blanco.
Pulsamos 6 para utilizar cian.
Presione Entrar para guardar su configuración. Las solicitudes de entrada ahora estarán en el color que seleccionó.
Además podemos cambiar las columnas que se muestran en la pantalla Administración de campos. Presione F para ingresar a la pantalla Administración de campos.
Los campos que se muestran disponen un asterisco (*
) junto a ellos y están resaltados en negrita. Presione las flechas hacia arriba y hacia abajo para mover el resaltado a través de la lista de campos.
Si mueve el resaltado de la parte inferior de una columna, aparecerá en la parte de arriba de la próxima (a menos que esté en la parte inferior de la última columna). Si lo mueve fuera de la parte de arriba de una columna, aparecerá en la parte inferior de la anterior (a menos que esté en la parte de arriba de la primera columna).
Movimos el punto culminante al COMMAND
entrada, y después presionó «d» para quitar el asterisco (*
). Después nos mudamos a la UID
entrada y presionó “d” para colocar un asterisco al lado de esa entrada. Esto significa el COMMAND
columna no se mostrará, pero la UID
la columna lo hará.
Mientras lo más destacado está en el UID
columna, pulsamos «s» para ordenar la lista de procesos en el UID
columna.
Presione Entrar para guardar su configuración y después presione “q” para salir de la pantalla Administración de campos.
los UID
columna ha reemplazado a la COMMAND
columna, y la lista de procesos está ordenada por ella.
Modo de visualización alternativo
Esto funciona mejor en modo de pantalla completa. Presione A para mostrar cuatro áreas en el listado de procesos, y después presione “a” para moverse de un área a otra.
Cada área dispone de una colección distinto de columnas, pero cada una además se puede personalizar a través de la pantalla Administración de campos. Esto le da la oportunidad de tener una pantalla personalizada de pantalla completa que muestre información distinto en cada área, y la capacidad de ordenar cada área por una columna distinto.
Otras pulsaciones de teclas
Las siguientes son algunas otras claves que pueden resultarle útiles en top
:
- W: Guarde la configuración y las personalizaciones para que sigan vigentes la próxima vez que comience
top
. - D: Establece una nueva frecuencia de actualización de la pantalla.
- Espacio: Fuerza
top
para actualizar su pantalla ahora mismo.
Plátano superior
Como hemos visto top
tiene todo un repertorio. Otros programas, tal como htop
, se han inspirado en él, pero cada uno tiene su propia visión de las cosas.
A pesar de esto, top
está instalado en todas partes. Cuando acude a las compañías para ver redes o servidores, a menudo se le dice que no se puede cambiar absolutamente nada en los servidores en vivo. El cliente crea las reglas, por lo que debe utilizar lo que ya está instalado.
Inclusive si prefiere una herramienta de monitoreo distinto, debe conocer top
. Tarde o temprano, es probable que se encuentre en una situación en la que es todo lo que tendrá acceso.