lunes, 7 de marzo de 2011

[SMARTMONTOOLS] Testeo de tu disco duro en Ubuntu/Debian

Para analizar el estado de tu disco duro en debian o Ubuntu podemos usar una herramienta conocida como smartmontools.

sudo apt-get install smartmontools

Smartmontools consta de dos aplicaciones, smartctl que realiza testeos manualmente y el demonio smartd que controla automáticamente los discos que hayamos marcado y envia los resultados al syslog o a un usuario.

Primero, listar los discos duros que disponemos para testearlos posteriormente:

laptop:~$ df -l
S.archivos Bloques de 1K Usado Dispon Uso% Montado en
/dev/sda5 4804736 1061908 3498760 24% /
none 1014244 280 1013964 1% /dev
none 1023888 212 1023676 1% /dev/shm
none 1023888 208 1023680 1% /var/run
none 1023888 0 1023888 0% /var/lock
/dev/sda9 85580216 21658064 59574864 27% /home
/dev/sda1 9611492 3473944 5649308 39% /usr
/dev/sda6 5766260 798912 4674436 15% /var
/dev/sda7 5766260 142588 5330760 3% /tmp




Antes de empezar debemos verificar que nuestro disco duro soporta SMART ( si tu disco duro es SATA el comando sería sudo smartctl -i -d ata /dev/sda):


laptop:/var$ sudo smartctl -i /dev/sda
smartctl 5.40 2010-03-16 r3077 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family: Fujitsu MHY2 BH series
Device Model: FUJITSU MHY2120BH
Serial Number: K427T7A2AAR4
Firmware Version: 0040020B
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 3c
Local Time is: Mon Mar 7 15:13:08 2011 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled


Para activar el soporte SMART en tu disco duro SATA  (en caso que estuviera desactivado) debemos poner el siguiente comando:

smartctl -s on -d ata /dev/sda 

En este caso, mi disco duro si lo soporta y está activo.
Ahora, activamos SMART en el disco que queramos testear:

laptop:~$ sudo smartctl -a /dev/sda

Primero nos mostrara la marca, modelo, numero de serie, firmeware, etc:
pedro@pedro-laptop:~$ sudo smartctl -a /dev/sda
smartctl 5.40 2010-03-16 r3077 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family: Fujitsu MHY2 BH series
Device Model: FUJITSU MHY2120BH
 Serial Number: K427T7A2AZZ3W
Firmware Version: 0040020B
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 3c
Local Time is: Mon Mar 7 14:45:07 2011 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled


Posteriormente, nos mostrará

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 100 100 046 Pre-fail Always - 142775
2 Throughput_Performance 0x0005 100 100 030 Pre-fail Offline - 27656192
3 Spin_Up_Time 0x0003 100 100 025 Pre-fail Always - 1
4 Start_Stop_Count 0x0032 099 099 000 Old_age Always - 4533
5 Reallocated_Sector_Ct 0x0033 100 100 024 Pre-fail Always - 8589934592000
7 Seek_Error_Rate 0x000f 100 100 047 Pre-fail Always - 188
8 Seek_Time_Performance 0x0005 100 100 019 Pre-fail Offline - 0
9 Power_On_Seconds 0x0032 092 092 000 Old_age Always - 4453h+04m+29s
10 Spin_Retry_Count 0x0013 100 100 020 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 1495
192 Power-Off_Retract_Count 0x0032 099 099 000 Old_age Always - 330
193 Load_Cycle_Count 0x0032 098 098 000 Old_age Always - 41946
194 Temperature_Celsius 0x0022 100 075 000 Old_age Always - 47 (Lifetime Min/Max 10/65)
195 Hardware_ECC_Recovered 0x001a 100 100 000 Old_age Always - 4257
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 454164480
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x000f 100 100 060 Pre-fail Always - 4397
203 Run_Out_Cancel 0x0002 100 100 000 Old_age Always - 3732316093724
240 Head_Flying_Hours 0x003e 200 200 000 Old_age Always - 0


raw read error rate: Tasa de errores de lectura. Si desciende significa que los platos o los cabezales que se encargan de leer los datos fallan y se están fatigando.

powers on hours count: Número de horas que ha estado el disco funcionando. En este parámetro consultaremos el valor en crudo (RAW_VALUE).

seek error rate: Número de errores de búsqueda, normalmente producidos por fallos en el posicionamiento de los cabezales de lectura.

seek time performance: rendimiento del sistema de posicionamiento de los cabezales.

temperature: muestra la temperatura en grados Celsius.

(Para saber el significado del resto puedes consultar aqui)


Listado de comandos que podemos usar y sus funcionaes:

Salud de uestro disco duro

smartctl -H /dev/hda             --> leer la información que SMT ha recopilado
smartctl -d ata -H /dev/sda   --> Igual que el anterior pero para discos SATA

Bitácora de errores de SMT

smartctl -l error /dev/hda            --> muestra los errores que SMT ha encontrado.
smartctl -d ata -l error /dev/sda  --> Igual que el anterior pero para discos SATA

Pruebas manuales con SMT

smartctl -c /dev/sda       --> nos dice que pruebas soporta nuestro disco
smartctl -d ata -c /dev/sda  --> igual que el anterior pero para discos SATA

smartctl -t offline /dev/hda  --> Immediate Offline Test ó Prueba Inmediata Desconetado (si está soportada, por supuesto),
Tras ejecutar este comando, SMART, nos avisará que el test durará un tiempo y debemos esperar.

Una vez que haya pasado ese tiempo, podemos ejecutar lo siguiente para ver el resultado de la prueba:

smartctl -l selftest /dev/sda 

Ahora vamos a ejecutar Short self-test routine ó Extended self-test routine, Rutina corta de autoprueba

smartctl -t short /dev/hda
smartctl -d ata -t short /dev/hda

La siguiente prueba hace la misma prueba que la anterior (Short self-test routine) pero de una forma mas rigurosa.

smartctl -t long /dev/hda
smartctl -d ata -t long /dev/hda

Tras estas pruebas volvemos a chequear el resultado con smartctl -l selftest /dev/hda

Ahora ejecutamos Conveyance Self Test ó Autoprueba de Transporte

smartctl -t conveyance /dev/hda 
smartctl -d ata -t conveyance /dev/sda

Y por último chequeamos Self Test Error Log de nuevo.


laptop:/$ sudo smartctl -d ata -l selftest /dev/sda
smartctl 5.40 2010-03-16 r3077 [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 Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Conveyance offline Completed without error 00% 3730 -
# 2 Short offline Completed without error 00% 3729 -
# 3 Short offline Completed without error 00% 2893 -

No hay comentarios:

Publicar un comentario