GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo puedo monitorear el disco io?

Para la tendencia de E/S de disco hay algunas opciones. Mi favorito personal es el sar comando de sysstat . Por defecto, da una salida como esta:

09:25:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
09:35:01 AM     all      0.11      0.00      0.01      0.00      0.00     99.88
09:45:01 AM     all      0.12      0.00      0.01      0.00      0.00     99.86
09:55:01 AM     all      0.09      0.00      0.01      0.00      0.00     99.90
10:05:01 AM     all      0.10      0.00      0.01      0.02      0.01     99.86
Average:        all      0.19      0.00      0.02      0.00      0.01     99.78

El %iowait es el tiempo de espera de E/S. Con el paquete Debian, debe habilitar el recopilador de estadísticas a través de /etc/default/sysstat archivo de configuración después de la instalación del paquete.

Para ver la utilización actual desglosada por dispositivo, puede usar el iostat comando, también del paquete sysstat:

$ iostat -x 1
Linux 3.5.2-x86_64-linode26 (linode)    11/08/2012      _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.84    0.00    0.08    1.22    0.07   97.80

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
xvda              0.09     1.02    2.58    0.49   112.79    12.11    40.74     0.15   48.56   3.88   1.19
xvdb              1.39     0.43    4.03    1.82    43.33    18.43    10.56     0.66  112.73   1.93   1.13

Algunas otras opciones que pueden mostrar el uso del disco en gráficos de tendencias son munin y cacti.


Echa un vistazo a iotop :

Total DISK READ :       0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ:       0.00 B/s | Actual DISK WRITE:       0.00 B/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                                                                                             
    1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % init splash
    2 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kthreadd]
    4 be/0 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kworker/0:0H]
    6 be/0 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [mm_percpu_wq]
    7 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksoftirqd/0]
    8 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [rcu_sched]

O iodump , si eso es más de su forma de pensar.

Nota:Esto requiere al menos el kernel 2.6.20 para funcionar.


Me gusta dstat . Puede mostrar totales y estadísticas por disco e incluso dispositivos md (RAID), también puede usar colores para una mejor visión general:

$ dstat -tdD total,sda,sdb,sdc,md1 60 
----system---- -dsk/total----dsk/sda-----dsk/sdb-----dsk/sdc-----dsk/md1--
     time     | read  writ: read  writ: read  writ: read  writ: read  writ
08-11 22:08:17|3549k  277k: 144k   28k: 851k   62k: 852k   60k:  25k   82k
08-11 22:09:17|  60k  258k:1775B   15k:  13k   63k:  15k   60k:  68B   74k
08-11 22:10:17| 176k  499k:   0    14k:  41k  122k:  41k  125k: 273B  157k
08-11 22:11:17|  42k  230k:   0    14k:9830B   54k:  14k   51k:   0    70k
08-11 22:11:52|  28k  132k:   0  5032B:5266B   33k:9479B   28k:   0    37k
  • -t para marcas de tiempo
  • -d para estadísticas de disco
  • -D para especificar los dispositivos exactos para informar
  • 60 a un promedio de más de 60 segundos. La pantalla se actualiza cada segundo, pero solo una vez cada 60 segundos se iniciará una nueva línea.

  • no se usa en este ejemplo, pero -c puede informar el porcentaje de E/S de espera, que en la mayoría de los casos está relacionado con la CPU que espera datos de los discos.

Está disponible para la mayoría de las distribuciones de Linux, pero a veces es necesario instalarlo desde los repositorios.


Linux
  1. ¿Cómo puedo monitorear datos en un puerto serie en Linux?

  2. ¿Cómo puedo saber si estoy en una pantalla?

  3. Uso del disco del monitor Bash

  4. ¿Cómo puedo montar una imagen de disco?

  5. ¿Cómo puedo monitorear el tráfico del puerto serie?

Cómo verificar el espacio en disco en Linux

Cómo eliminar una partición en Linux

Cómo enumerar particiones de disco en Linux

Cómo cifrar la partición en Linux

¿Cómo monitorear la actividad del disco?

¿Cómo puedo monitorear la carga del disco duro en Linux?