
Hay varias herramientas que podemos usar para monitorear las estadísticas del sistema, pero si está buscando memoria virtual, use vmstat
que admite muchas opciones y parámetros.
puedes configurar vmstat
Use la pantalla o cualquier otro multiplexor de pantalla para un mejor uso.
¿Qué es vmstat?
Una vmstat
Delegate (Estadísticas de memoria virtual) es una utilidad de línea de comandos para obtener información sobre procesos del sistema, memoria, paginación, interrupciones, E/S de bloque, actividad de disco y CPU (Estadísticas de memoria virtual), es una utilidad de monitoreo integrada. El programa está en Linux.
Puedes empezar de inmediato vmstat
para monitorear, pero recomiendo verificar la sintaxis básica vmstat
utilizado de manera apropiada.
Sintaxis básica del comando vmstat
El comando básico vmstat no requiere ninguna opción.
$ vmstat [options] [delay [count]]
- [options]: Puede modificar la salida predeterminada con varias opciones.
- [delay [count]]: Informe o estadísticas predeterminados que consisten en el promedio de arranque actual. Para encontrar el informe más reciente, indique el retraso en segundos y cuente el número de ciclos de actualización.
si intentas correr vmstat En la pantalla de su terminal, obtendrá una salida que puede resultar abrumadora, pero estamos aquí para simplificar las cosas.
$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3517352 121536 1718500 0 0 191 46 438 1417 18 6 77 0 0
Uso de vmstat en Linux
Hay varias opciones disponibles vmstat, lo verás en la siguiente sección. Hasta entonces, es bueno conocer las abreviaturas utilizadas en el resultado anterior. Si está familiarizado con ese acrónimo, puede omitirlo.
Ejecutemos el comando vmstat nuevamente para verificar la salida.
$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3517352 121536 1718500 0 0 191 46 438 1417 18 6 77 0 0
La salida predeterminada tiene seis encabezados con los siguientes nombres: procs, memory, swap, io, system y CPU.
- proceso: Aunque sabe que proc es conocido por el sistema de archivos de proceso actual, se divide en dos parámetros, r y B
- r: Representa un proceso ejecutable. Muestra el número de procesos en ejecución o en espera de ejecución.
- Segundo: Número de procesos bloqueados.
- memoria: El centro de apelación es su memoria dividida en cuatro secciones.
- cambiar: intercambio de uso de memoria
- gratis: memoria reservada para uso
- amarillo claro: Cantidad de memoria para usar como búfer
- cache: número de cachés
- intercambio: detalles de uso de la memoria de intercambio
- y: Cantidad intercambiada desde el disco (disco a memoria)
- entonces: Cantidad de intercambio a disco (memoria a disco)
- sistema: detalles sobre las interrupciones del sistema y los cambios de contexto
- existe: Número de interrupciones en segundos
- CS: Cambios de contexto por segundo (un cambio de contexto es un estado conocido del proceso)
- Una generación: Información sobre dispositivos o archivos de bloque (almacenamiento)
- Hay uno: El número de bloques recibidos del dispositivo de bloques.
- Bo: El número de bloques enviados al dispositivo de bloques.
- UPC: Toda la información principal sobre la presión de la CPU y los datos se muestra en porcentaje
- nosotros: El tiempo que el usuario ha estado ejecutando en el espacio de usuario del kernel.
- su: Hora del sistema ejecutándose en el espacio del kernel
- IDENTIFICACIÓN: tiempo libre
- Guau: Hora de esperar por IO
- Roca: Robar tiempo lo ayuda a comprender el tiempo de espera promedio para que se complete un proceso de máquina virtual.
Use vmstat para encontrar memoria inactiva y activa
La memoria inactiva y activa no forman parte del encabezado predeterminado.Puede encontrar fácilmente el uso de memoria activo e inactivo al -Una Alcance.
$ vmstat -a
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free inact active si so bi bo in cs us sy id wa st
0 0 1385196 2517460 3300196 1089204 9 33 136 368 406 617 30 11 58 0
Si no estás seguro acerca de la memoria inactiva o activa, te lo explico. La memoria inactiva es el espacio utilizado más recientemente, y la memoria activa es utilizada por los programas que se están ejecutando actualmente.
Cambiar el tamaño de celda en vmstat
La salida predeterminada muestra celdas de datos kilobytes, que se ve raro.Puede cambiar las unidades para varios tamaños, como k, k, mo, m con la ayuda de -S o -unidad parámetro.
imprimir datos megabytespuede escribir los siguientes comandos.
$ vmstat -a -S M
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free inact active si so bi bo in cs us sy id wa st
2 0 1351 2415 3260 1104 0 0 126 343 410 93 29 11 60 0 0
Usted dice qué opción de Gigabyte debería incluirse, ¿verdad?
Encuentre el número de bifurcaciones desde el arranque
¿No estás seguro de qué es un tenedor? bifurcaciones muestra la cantidad de procesos creados a partir del proceso principal, el proceso de bifurcaciones se denomina proceso secundario del proceso principal.
Podemos encontrar el número de tenedores por -F o – tenedor.
$ vmstat -f
250585 forks
El resultado anterior muestra el número de bifurcaciones creadas desde que se inició el sistema.
Comprobar el estado del disco con vmstat
puedes usarlo vmstat Para encontrar información sobre el rendimiento del disco y la memoria, vmstat enumerará la cantidad de periféricos de almacenamiento, leer, Escribir junto con IO.
puedes usarlo -D o -disco parámetros a comprobar.
$ vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------
total merged sectors ms total merged sectors ms cur sec
sda 418116 285865 18741202 131256 409978 4291306 51176154 616108 0 684
sr0 35 0 13 136 0 0 0 0 0 0
Muestra dos dispositivos de bloque, algo Para SSD y sr0 Como CD-ROM, todo lo que queda es la representación de bloques individuales.
Si está interesado en obtener estadísticas generales del disco, escriba los siguientes comandos.
$ vmstat -D
2 disks
10 partitions
418988 total reads
286315 merged reads
18774066 read sectors
132239 milli reading
420141 writes
4296064 merged writes
59432162 written sectors
655405 milli writing
0 inprogress IO
697 milli spent IO
Obtenga toda la información de la memoria como /proc/meminfo
existe -s Alcance.
Agregamos algunos parámetros adicionales para imprimir datos en megabytes en lugar de kilobytes.
$ vmstat -s -S M
7848 M total memory
2945 M used memory
1173 M active memory
2747 M inactive memory
3359 M free memory
103 M buffer memory
1440 M swap cache
7629 M total swap
****** TRIMMED OUTPUT *********
77605654 interrupts
277246012 CPU context switches
1642830603 boot time
252954 forks
Aunque puedes encontrar toda esta información en /proc/meminfopero no puede controlar el tamaño de las columnas individuales.
usar marca de tiempo
Puede modificar el valor por defecto vmstat Encabezado con encabezado de marca de tiempo, que es útil para las opciones de retraso.Para imprimir la marca de tiempo, use -t o –marca de tiempo.
$ vmstat --timestamp
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- -----timestamp-----
r b swpd free buff cache si so bi bo in cs us sy id wa st IST
0 0 1366764 3308660 117016 1507600 7 24 100 318 395 286 26 9 65 0 0 2022-01-25 18:15:17
Encuentre la información más reciente de la memoria usando el retraso
La parte divertida comienza aquí.puedes usarlo Demora Opción para monitorear el rendimiento del sistema en intervalos de tiempo específicos.En otras palabras, puedes decir vmstat El comando se ejecutará automáticamente después de un período de tiempo.
Si su requisito es imprimir la información del sistema cada 2 segundos, escriba el siguiente comando para interrumpir.puedes presionar Ctrl-C.
$ vmstat 2
Compruebe esta interrupción o suspenda la ejecución del comando en Linux
También puede detener automáticamente la salida de vmstat después de una cierta cantidad de conteos o actualizaciones. Por ejemplo, si desea imprimir la información del sistema cada 2 segundos, y el comando debería interrumpirse después de cinco ciclos.
$ vmstat 2 5
A veces, cuando ejecuta el comando anterior durante mucho tiempo, la salida puede complicarse y es imposible saber el tiempo de salida exacto.
Para arreglar esto puedes usar -t o –marca de tiempo así como retrasar y contar.
$ vmstat -t 2 5
envolver
Eso es todo lo que tengo.Si quieres saber más sobre vmstat
utilizando man vmstat
Pedido.Aunque sabes que todos los datos se extraen de /proc/meminfo
,/proc/stat
y /proc/*/stat
.
publicaremos artículos top
comando para monitorear su sistema durante los próximos días. Así que asegúrese de suscribirse a nuestro boletín.
Un tipo apasionado por la tecnología, exploró algunas tecnologías increíbles y exploró más, y mientras avanzaba, tuve la oportunidad de trabajar en el desarrollo de Android, Linux, AWS, DevOps usando varias herramientas de código abierto.
Uno de mis lemas de vida es «Sé siempre un estudiante de por vida».