Páginas

miércoles, 18 de mayo de 2011

Comprobar Disco Duro

smartmontools

Utilidad incluida en Debian (y derivados), para conocer el estado del disco duro de tu máquina. Este es el nuevo disco duro del portatil WD de 500GB. En la parte superior de la imagen Disk is healthy (healthy = saludable, literalmente). Una manera rápida y práctica de comprobar un HDD.
Nota: Aviso a navegantes estuve probando un disco SSD OCZ Vertex II 120 GB y después de seis meses todos los datos desaparecieron y la BIOS no le reconoce. Poco fiables los SSD (al dia de hoy).


En GNU/Linux las herramientas smart monitoring tools pertenecientes al paquete smartmontools permiten analizar el disco duro que, entre otras cosas útiles, nos permite conocer el estado físico del mismo y determinar si su vida útil está llegando a su fin.

Primero comprobar si nuestra BIOS y Disco duro lo soportan:

# smartctl -i /dev/sda

Devolverá algo parecido a esto:

smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Momentus 5400.4 series
Device Model:     ST9120817AS
Serial Number:    5RE1NQFK
Firmware Version: 3.ADB
User Capacity:    120,034,123,776 bytes
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 4
Local Time is:    Wed May 18 07:14:45 2011 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Las dos últimas líneass determinan que el disco tiene soporte SMART y está activado:
SMART support is: Avilable = dispositivo tiene capacidad SMART
SMART support is: Enabled = Activado.

Determinar las características del soporte que tenemos:

# smartctl -Hc /dev/sda

Devolverá algo como esto:

smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
Please note the following marginal Attributes:
...
...
...

Ver el log de errores, si los hay:

# smartctl -l error /dev/sda

Si no hay errores devolverá:

smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF READ SMART DATA SECTION ===
SMART Error Log Version: 1
No Errors Logged

Obtener información sobre el disco duro:

# smartctl -l selftest -i /dev/sda

La salida será parecida a esto:

smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Momentus 5400.4 series
Device Model:     ST9120817AS
Serial Number:    5RE1NQFK
Firmware Version: 3.ADB
User Capacity:    120,034,123,776 bytes
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 4
Local Time is:    Wed May 18 07:21:50 2011 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%         1         -
# 2  Short offline       Interrupted (host reset)      70%         1         -
# 3  Short offline       Completed without error       00%         0         -
# 4  Short offline       Interrupted (host reset)      90%         0         -            -

Detalle de la información obtenida:

    * Model Family: “Familia” del disco duro (Seagate Barracuda 7200).
    * Device Model: Modelo especifico y firmware.
    * Serial Number: Numero de serie del disco duro.
    * User Capacity: Capacidad del mismo (40GB).
    * ATA Version is: Versión del ATA usado.
    * SMART support is: Si soporta SMART.
    * SMART support is: Sí lo tiene activado.
    * LifeTime: Són las horas que el disco duro ha estado encendido.
    * LBA_of_first_error: Muestra los posibles errores.

Agregar el parámetro -H antes de -i /dev/sda nos dirá si para S.M.A.R.T. el disco tiene errores

# smartctl -l selftest -i -H /dev/sda

Y nos responderá

...
...
...
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
Please note the following marginal Attributes:
...

En el caso del disco duro de mi portatil (objeto de análisis), me advierte sobre "Tener en cuenta los siguientes atributos marginales" (following marginal Attributes), pero hay más y probablemente el análisis más importante con el parámetro -A:

# smartctl -l selftest -A /dev/sda

El resultado será:



    * * 12 Power_Cycle_Count: RAW_VALUE: 2173. Se ha encendido 1255 veces. VALUE 098.
    ** 194 Temperature Celsius. RAW_VALUE: 44. Es decir, 44 grados de temperatura en el disco, muy alta.

De estos parámetros el más significativo es el campo RAW_Value que indica el valor del dato en cuestión y el campo VALUE que indica el estado según S.M.A.R.T, siendo un estado óptimo por encima de los 200, normal entre los 100-200 y malo por debajo de los 100 (en este caso 98 :-( ). De todas maneras, la rigurosidad se aplica a servidores en producción. Aunque para datos críticos existen mejores soluciones (raid 5, raid 10, etc), sustituyen en caliente un disco que ha fallado.  


Linux es genial!

2 comentarios:

  1. Claro que Linux es genial !!!
    Muchas gracias por tu tiempo y explicación !

    Mis respetos.-

    ResponderEliminar