Tutorial de comando superior de Linux para principiantes (8 ejemplos)

Mientras trabaja en la línea de comando de Linux, puede haber momentos en los que desee verificar los detalles relacionados con el proceso, como qué proceso consume más CPU o memoria. Bueno, existe un comando, llamado top, que te permite hacer esto fácilmente. En este tutorial, discutiremos esta herramienta usando algunos ejemplos fáciles de entender.
Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos mencionados en este artículo se probaron en una máquina con Ubuntu 16.04 LTS.
Comando superior de Linux
El comando superior muestra una lista de procesos o subprocesos que actualmente administra el kernel de Linux, junto con información útil relacionada con ellos. La siguiente es la sintaxis de la herramienta:
top [options]
Y esto es lo que dice la página de manual de la herramienta al respecto:
The top program provides a dynamic real-time view of a running system. It can display system summary information as well as a list of processes or threads currently being managed by the Linux kernel. The types of system summary information shown and the types, order and size of information displayed for processes are all user configurable and that configuration can be made persis? tent across restarts. The program provides a limited interactive interface for process manipulation as well as a much more extensive interface for per? sonal configuration -- encompassing every aspect of its opera? tion.
Los siguientes son algunos ejemplos de estilo de preguntas y respuestas que le darán una buena idea de cómo funciona el comando superior.
Q1. ¿Cómo usar la parte superior?
Simple, simplemente ejecute el comando ‘superior’ sin ninguna opción:
top
Aquí está la salida que produjo en mi sistema:
Tenga en cuenta que lo que ve en la captura de pantalla es solo una instantánea de la salida en tiempo real (que cambia después de un intervalo fijo) que se produjo.
Q2. ¿Cómo entender la salida del comando superior?
Comencemos con la primera línea. Contiene entradas para (en ese orden), la hora actual, la duración desde que el sistema está en funcionamiento, las sesiones de usuario activas y la carga promedio en el sistema (para el último minuto, cinco minutos y quince minutos, respectivamente).
La segunda línea contiene información (en ese orden) sobre el número total de procesos, el número de procesos en ejecución, el número de procesos inactivos, el número de procesos que se detuvieron y el número de procesos en estado zombi.
La tercera línea contiene información sobre el uso de la CPU. Los siguientes son los detalles:
us, user : time running un-niced user processes sy, system : time running kernel processes ni, nice : time running niced user processes id, idle : time spent in the kernel idle handler wa, IO-wait : time waiting for I/O completion hi : time spent servicing hardware interrupts si : time spent servicing software interrupts st : time stolen from this vm by the hypervisor
Las dos líneas siguientes muestran información relacionada con la RAM y el uso de la memoria de intercambio. Y finalmente, viene la información relacionada con los procesos, que consiste en (en ese orden) ID del proceso, usuario propietario del proceso, prioridad del proceso, valor agradable del proceso, memoria virtual, física y compartida utilizada por el proceso, estado del proceso (Dormir, Ejecutar o Zombi), uso de CPU y RAM, tiempo de actividad y comando que inició el proceso.
Q3. ¿Cómo matar un proceso desde la salida superior?
Esto es bastante simple: solo presione ‘k’ y la parte superior le pedirá el PID del proceso que desea eliminar. Verá un mensaje similar al siguiente que aparece justo encima de la línea que contiene los encabezados de las columnas del proceso:
PID to signal/kill [default pid = 3397]
Como puede ver, puede ingresar el ID del proceso o, de forma predeterminada, top intentará eliminar (enviando SIGTERM) el primer proceso de la lista. Una vez que se envía la señal, se produce un mensaje similar al siguiente.
Send pid 3007 signal [15/sigterm]
Q4. ¿Cómo cambiar la prioridad de un proceso?
Al igual que ‘k’ es para matar, puedes presionar ‘r’ en caso de que quieras cambiar la prioridad de un proceso (o quieras mejorarlo). Presionar ‘r’ produce un mensaje similar al siguiente:
PID to renice [default pid = 3397]
Entonces, ingrese un PID o top intentará mejorar la prioridad del primer proceso en la lista de manera predeterminada. Por ejemplo, pasé un PID y luego top me pidió el nuevo valor agradable.
Renice PID 2665 to value
Simplemente proporcione un valor y presione Intro, y verá que se cambiará el valor agradable para el proceso en cuestión.
P5. ¿Cómo cambiar la frecuencia de actualización del comando superior?
De forma predeterminada, la parte superior actualiza la salida cada 3 segundos, pero puede modificar esto presionando ‘d’. El comando le pedirá que ingrese el nuevo valor de retraso:
Change delay from 3.0 to
Simplemente ingrese el valor y presione enter. Eso es todo.
P6. ¿Cómo limitar la salida del comando superior a un usuario?
De forma predeterminada, el comando superior muestra todos los procesos. Sin embargo, puede limitar la salida a un usuario en particular presionando ‘u’.
Which user (blank for all)
Simplemente ingrese el nombre de usuario en la línea de arriba y presione enter, y verá que la salida contendrá solo aquellos procesos que son propiedad del usuario cuyo nombre ingresó.
Por ejemplo, ingresé ‘raíz’ y aquí está el resultado:
P7. ¿Cómo hacer que la pantalla superior complete el comando junto con los argumentos?
Esto se puede hacer presionando ‘c’. Aquí hay un ejemplo:
Entonces puede ver la ruta de comando completa, así como los argumentos de la línea de comando en la salida ahora.
P8. ¿Cómo obtener ayuda con los comandos superiores interactivos?
Para obtener ayuda relacionada con los comandos principales interactivos, presione ‘h’. En la salida, verá los comandos disponibles y lo que hacen. Por ejemplo, esto es lo que apareció en mi sistema cuando presioné ‘h’.
Conclusión
Aquí solo hemos arañado la superficie. El comando superior proporciona muchas más funciones. Una vez que haya entendido todo lo que hemos discutido en este artículo, y haya terminado de practicarlo, diríjase a la parte superior página man para aprender más al respecto.