GNU/Linux >> Tutoriales Linux >  >> Linux

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

Solución 1:

Puede obtener una buena medida de esto usando el iostat herramienta.

% iostat -dx /dev/sda 5

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.78    11.03    1.19    2.82    72.98   111.07    45.80     0.13   32.78   1.60   0.64

La utilización del disco se muestra en la última columna. Esto se define como

Porcentaje de tiempo de CPU durante el cual se emitieron solicitudes de E/S al dispositivo (utilización de ancho de banda para el dispositivo). La saturación del dispositivo ocurre cuando este valor está cerca del 100 %.

Solución 2:

iotop es una versión de top que analiza la cantidad de IO que usa cada proceso. Está en los repositorios estándar de ubuntu; No sé si está en RHEL o Fedora, pero debería estarlo.

Para kernels más antiguos (por ejemplo, CentOS 5.x o RHEL 5.x) que no son compatibles con iotop, use topio en su lugar (documentado aquí:http://yong321.freeshell.org/freeware/pio.html#linux. Se basa en / proc//io para estadísticas de io y proporciona una funcionalidad similar a iotop. Consulte el enlace para obtener más detalles.

Solución 3:

Como sugiere sastanin en los comentarios, puede procesar directamente los valores dados en /sys/block/sda/stat o /proc/diskstats . Esto puede ser útil cuando ninguna de las otras herramientas mencionadas está disponible y no puede instalarlas fácilmente.

Por ejemplo (IIUC) algo como esto (en bash) debería dar el número de lecturas por segundo:

OLD=`awk '{print $1}' /sys/block/sda/stat` # First field is number of read I/Os processed
DT=1
for ii in `seq 1 10`
do
    sleep $DT
    NEW=`awk '{print $1}' /sys/block/sda/stat`
    echo $((($NEW-$OLD)/$DT))
    OLD=$NEW
done

Consulte https://www.kernel.org/doc/Documentation/iostats.txt y https://www.kernel.org/doc/Documentation/block/stat.txt para obtener documentación.

Solución 4:

Debería echar un vistazo a atop, que combina el poder de iotop/top/iftop, todo en un solo lugar, y destaca las partes críticas de su sistema.

Solución 5:

Recomendaría echar un vistazo a la herramienta nmon. Le mostrará la carga en vivo en una serie de parámetros del sistema, así como la grabación de datos en un archivo para su posterior lectura. Es una herramienta gratuita disponible aquí:


Linux
  1. Cómo instalar un controlador de dispositivo en Linux

  2. Cómo particionar un disco en Linux

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

  4. ¿Cómo crear un dispositivo de tarjeta de sonido ficticio en el servidor Linux?

  5. ¿Cómo montar un dispositivo en Linux?

Cómo encontrar detalles de la unidad de disco duro en Linux

Cómo enumerar particiones de disco en Linux

Cómo encontrar la velocidad de transferencia de datos del disco duro en Linux

Cómo verificar bloques defectuosos o sectores defectuosos en el disco duro en Linux

Cómo cifrar la partición en Linux

¿Cómo carga Linux la imagen 'initrd'?