Cómo usar el comando sar en Linux

Un terminal linux en la pantalla de un portátil.
fatmawati achmad zaenuri/Shutterstock.com

El sarcomando le permite ver estadísticas de rendimiento para diferentes elementos de su computadora Linux, tanto para datos históricos como en tiempo real. Te mostramos cómo usar este gran recurso.

El comando sar

El sarcomando, o System Activity Reporter, es parte del sysstatpaquete. Captura un conjunto de información estadística, como la carga de la CPU , la paginación de la memoria, la utilización de la memoria, el uso de intercambio, la E/S de la red y mucho más. Hace que estos datos sean accesibles para usted en instantáneas en tiempo real, mostrándole lo que está sucediendo en su computadora en este momento, y en informes históricos.

Se ejecuta en segundo plano como un demonio y recopila un conjunto de datos cada diez minutos. Los datos del día actual se escriben en un archivo de texto. Se convierte en un archivo binario cuando pasa la medianoche. Los archivos se sobrescriben cada mes para que no consuman constantemente la capacidad de su disco duro.

El sarcomando le permite interrogar al sistema y ver las estadísticas. Pero primero, deberá instalar el sysstatpaquete.

Instalación del paquete sysstat

La instalación sysstates muy sencilla. Usamos el administrador de paquetes de su sistema Linux para instalarlo y luego lo usamos systemdpara habilitar e iniciar el demonio en segundo plano.

Para instalar sysstaten Ubuntu usamos apt:

sudo apt instalar sysstat

Instalación de sysstat con apt en Ubuntu

Para instalar sysstaten Fedora, escriba:

sudo dnf instalar sysstat

Instalación de systat con dnf en Fedora

Y para instalar sysstat en Manjaro, usamos pacman:

sudo pacman -S sysstat

Instalación de systat con pacman en Manjaro

Una vez sysstatinstalado, debemos habilitarlo para que pueda ejecutarse como un demonio, un proceso en segundo plano, cada vez que inicie su computadora, y debemos iniciarlo ahora para que podamos usarlo de inmediato. Usamos systemctl, parte de la systemdfamilia de utilidades, para habilitar e iniciar demonios.

sudo systemctl habilitar sysstat

Habilitación del demonio sysstat

sudo systemctl iniciar sysstat

iniciando el demonio sysstat

Para ver qué versión de sarestá usando y para asegurarse de que responde, puede usar la -Vopción (versión):

sar -V

Comprobando la versión de sar

Estadísticas en tiempo real con sar

Puede usar sarpara ver lo que está sucediendo dentro de su computadora en este momento. Y debido a que una instantánea es solo eso, el estado de juego en un momento determinado, y a veces una tendencia es más útil, puede solicitar sarque se muestren varias instantáneas con una cantidad específica de segundos entre ellas.

Relacionado:  ¿Qué significa “SGTM” y cómo se usa?

Estadísticas de la CPU

Para ver tres conjuntos de estadísticas de CPU con dos segundos entre ellos, usaríamos este comando, que usa la -uopción (CPU). Tenga en cuenta que el intervalo viene primero. Entonces, este comando dice «mostrar las estadísticas de la CPU en pasos de dos segundos, para tres conjuntos de datos».

sar -u 2 3

Mostrando tres conjuntos de estadísticas de CPU

Al estirar la ventana de su terminal, la tabla se alinea perfectamente, por lo que es más fácil de leer.

El encabezado de la primera columna es la hora en que se ejecutó el comando. Los valores en la columna son el momento en que se recopiló cada conjunto de datos. Las otras columnas son:

  • CPU : el número de núcleos de la CPU, o ALLel promedio de todos los núcleos.
  • %Usuario : el porcentaje de tiempo dedicado a ejecutar aplicaciones en el nivel de usuario, «en el territorio del usuario».
  • %Agradable : el porcentaje de tiempo dedicado a ejecutar aplicaciones a nivel de usuario, con prioridad agradable .
  • %system : el porcentaje de tiempo dedicado a ejecutar procesos a nivel de sistema, en el kernel.
  • %iowait : el porcentaje de tiempo en que la CPU estuvo inactiva con una solicitud de E/S de disco pendiente.
  • %steal : en una máquina virtual , este es el porcentaje de tiempo que la CPU virtual estuvo inactiva porque la CPU del host de hardware estaba dando servicio a una máquina virtual diferente.
  • %idle : el porcentaje de tiempo en que la CPU estuvo inactiva sin solicitudes de E/S de disco pendientes.

La línea final es el promedio de las líneas precedentes.

Para ver las estadísticas de un núcleo específico, utilice la -Popción (por procesador). A esto le sigue el número de un núcleo de CPU, o una lista o rango de números de núcleo, como 0,1,4o 4-8.

Este comando analiza tres conjuntos de datos con un segundo entre ellos, para el núcleo 1. Recuerde, los núcleos se numeran desde cero.

sar -P 1 1 3

Mostrando estadísticas de CPU para un solo núcleo

Estadísticas de paginación de memoria

La -Bopción (paginación) hace sarque se muestren estadísticas relacionadas con la paginación de la memoria en el disco duro. Vamos a pedir dos conjuntos de información, con cinco segundos entre ellos.

sar -B 5 2

Mostrar estadísticas de paginación de memoria

Las columnas contienen la siguiente información.

  • pgpgin/s : número total de kilobytes que el sistema ha paginado (recuperado) del disco duro por segundo.
  • pgpgout/s : número total de kilobytes que el sistema ha enviado a la unidad de disco duro por segundo.
  • fallo/s : Número de fallos de página, tanto menores como mayores, realizados por el sistema por segundo.
  • majflt/s : Número de fallas mayores que ha cometido el sistema por segundo, que han requerido cargar una página de memoria desde el disco.
  • pgfree/s : Número de páginas colocadas en la lista libre por el sistema por segundo.
  • pgscank/s : Número de páginas escaneadas por el demonio del sistema de administración de memoria kswapdpor segundo.
  • pgscand/s : Número de páginas escaneadas directamente por segundo.
  • pgsteal/s : número de páginas que el sistema ha recuperado de la memoria caché por segundo.
  • %vmeff : Calculado como pgsteal/ pgscan, esta es una indicación de la eficiencia de las reclamaciones de página.
Relacionado:  Los televisores Neo QLED de Samsung impresionan en modelos 4K y 8K

Tasas de transferencia de E/S

Para ver las estadísticas de tasa de transferencia y E/S, use la -bopción (nota, «b» minúscula). Estamos pidiendo tres conjuntos de datos con cuatro segundos entre ellos.

sar -b 4 3

Mostrar estadísticas de transferencia de E/S

Esto es lo que sostienen las columnas.

  • tps : Número total de solicitudes de transferencia por segundo que se realizaron a dispositivos físicos. Tenga en cuenta que se trata de un recuento de solicitudes . Es posible que no todos hayan tenido éxito.
  • rtps : número total de solicitudes de lectura por segundo emitidas a dispositivos físicos.
  • wtps : Número total de solicitudes de escritura por segundo emitidas a dispositivos físicos.
  • dtps : número total de solicitudes de descarte por segundo emitidas a dispositivos físicos.
  • pan/s : Cantidad total de datos leídos de dispositivos físicos. La cifra se da en bloques de 512 bytes por segundo.
  • bwrtn/s : cantidad total de datos escritos en dispositivos físicos en bloques por segundo.
  • bdscd/s : Cantidad total de datos descartados en bloques por segundo.

Hay muchas más categorías de información que puede seleccionar para revisar. Todos se utilizan de la misma manera. También puede usar la -Aopción (todo) para ver un volcado completo de todo lo que sarpuede arrojarle.

Consulte la página del manual de sar  para ver la lista completa .

Estadísticas históricas con sar

Para revisar cualquiera de los datos históricos es simplemente cuestión de añadir las opciones -s(start) y (end) time a cualquiera de los comandos -ehabituales . sarLos tiempos se expresan en el reloj de 24 horas.

Para ver cómo fue la carga de la CPU entre las 06:30 y las 07:15 de hoy , usaremos este comando.

sar -u -s 06:30:00 -e 07:15:00

Mostrando datos históricos de hoy más temprano

Para ver cómo era la situación en un día anterior, use un número como indicador de opción. El número indica en qué día se debe informar. La -1opción significaría ayer, la -2opción significaría hace dos días, y así sucesivamente.

Relacionado:  Cómo crear un acceso directo al modo de conducción del Asistente de Google

Generemos un informe entre las 13:00 y las 13:00, utilizando los datos de ayer.

sar -u -1 -s 13:00:00 -e 13:30:00

Mostrando información histórica de ayer

Otra forma de especificar el día sobre el que desea informar es utilizar el nombre del archivo de datos de ese día en la línea de comandos. Hacemos esto con la -fopción (nombre de archivo).

Los archivos diarios se denominan “saXX” donde el XX se reemplaza por el día del mes. Se crean en la carpeta de registro de su computadora con Linux. La sarcarpeta de registro probablemente se llame «/var/log/sa/» o «/var/log/sysstat/».

En Ubuntu es «/var/log/sysstat/», por lo que el formato de nuestro comando para ver el uso de la CPU entre las 14:00 y las 14:30 para el día 21 de este mes se vería así:

sar -u -s 14:00:00 -e 14:30:00 -f /var/log/sysstat/sa21

Mostrar datos históricos de un archivo de datos específico

Información es poder

Y sarciertamente le brinda suficiente información para tomar decisiones informadas sobre el rendimiento de su computadora .

Si tiene una función de soporte, o es el soporte técnico para sus amigos y familiares, poder revisar los datos históricos es una excelente manera de comenzar a investigar un problema que se le informó hoy pero que en realidad sucedió ayer. O la semana pasada.