En primer lugar, creo que todos saben que los discos duros fallan mucho más de lo que a los fabricantes les gustaría admitir . Google realizó un estudio que indica que ciertos atributos de datos sin procesar que el estado SMART de los informes de los discos duros pueden tener una fuerte correlación con la falla futura de la unidad.
Encontramos, por ejemplo, que después de su primer error de escaneo, las unidades tienen 39 veces más probabilidades de fallar dentro de los 60 días que las unidades sin tales errores. Los primeros errores en reasignaciones, reasignaciones fuera de línea y recuentos de prueba también están fuertemente correlacionados con mayores probabilidades de falla. A pesar de esas fuertes correlaciones, encontramos que los modelos de predicción de fallas basados solo en parámetros SMART probablemente estén severamente limitados en su precisión de predicción, dado que una gran fracción de nuestras unidades fallidas no han mostrado señales de error SMART.
Parece que Seagate está tratando de ocultar esta información sobre sus unidades al afirmar que solo su software puede determinar con precisión el estado exacto de su unidad y, por cierto, su software no le dirá los valores de datos sin procesar para los atributos SMART. Western Digital no ha hecho tal reclamo a mi conocimiento, pero su herramienta de informe de estado tampoco parece informar valores de datos sin procesar.
He estado usando HDtune y smartctl de smartmontools para recopilar los valores de datos sin procesar para cada atributo. De hecho, he descubierto que ... Estoy comparando manzanas con naranjas cuando se trata de ciertos atributos. Por ejemplo, descubrí que la mayoría de las unidades Seagate informarán que tienen muchos millones de errores de lectura, mientras que el 99% de las veces el digital occidental muestra 0 para errores de lectura. También descubrí que Seagate informará muchos millones de errores de búsqueda, mientras que Western Digital siempre parece informar 0.
P : ¿Cómo normalizo estos datos? ¿Seagate produce millones de errores mientras que Western digital no produce ninguno? El artículo de Wikipedia sobre el estado SMART dice que los fabricantes tienen diferentes formas de informar estos datos.
Aquí está mi hipótesis:
Creo que encontré una manera de normalizar (¿es ese el término correcto?) Los datos.
Las unidades Seagate tienen un atributo adicional que las unidades Western Digital no tienen (Hardware ECC recuperado). Cuando resta el recuento de errores de lectura del recuento recuperado de ECC, probablemente terminará con 0. Esto parece ser equivalente al recuento de "errores de lectura" informados por Western Digitals. Esto significa que Western Digital solo informa errores de lectura que no puede corregir, mientras que Seagate cuenta todos los errores de lectura y le dice cuántos de ellos pudo corregir.
Tenía una unidad Seagate donde el recuento de errores de lectura era inferior al recuento recuperado de ECC y noté que muchos de mis archivos se estaban corrompiendo. Así es como se me ocurrió mi hipótesis. Los millones de errores de búsqueda que produce Seagate siguen siendo un misterio para mí.
Confirme o corrija mi hipótesis si tiene información adicional.
Aquí está el estado inteligente de mi unidad digital occidental para que pueda ver de lo que estoy hablando:
james@ubuntu:~$ sudo smartctl -a /dev/sda
smartctl version 5.38 [x86_64-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF INFORMATION SECTION ===
Device Model: WDC WD1001FALS-00E3A0
Serial Number: WD-WCATR0258512
Firmware Version: 05.01D05
User Capacity: 1,000,204,886,016 bytes
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Thu Jun 10 19:52:28 2010 PDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0027 179 175 021 Pre-fail Always - 4033
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 270
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
9 Power_On_Hours 0x0032 098 098 000 Old_age Always - 1468
10 Spin_Retry_Count 0x0032 100 100 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 262
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 46
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 223
194 Temperature_Celsius 0x0022 105 102 000 Old_age Always - 42
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 200 200 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 200 200 000 Old_age Offline - 0
Editar: Aquí está el disco Seagate del que estaba hablando que estaba causando corrupción de datos. Estos datos son de HDTune.
HD Tune: ST3250623A Health
ID Current Worst ThresholdData Status
(01) Raw Read Error Rate 45 38 6 77882492 Ok
(03) Spin Up Time 99 98 0 0 Ok
(04) Start/Stop Count 100 100 20 640 Ok
(05) Reallocated Sector Count 100 100 36 0 Ok
(07) Seek Error Rate 85 60 30 359872048 Ok
(09) Power On Hours Count 94 94 0 6028 Ok
(0A) Spin Retry Count 100 100 97 0 Ok
(0C) Power Cycle Count 100 100 20 689 Ok
(C2) Temperature 25 55 0 25 Ok
(C3) Hardware ECC Recovered 50 47 0 201555081 Ok
(C5) Current Pending Sector 100 100 0 0 Ok
(C6) Offline Uncorrectable 100 100 0 0 Ok
(C7) Ultra DMA CRC Error Count 200 199 0 1 Ok
(C8) Write Error Rate 100 253 0 0 Ok
(CA) TA Counter Increased 100 253 0 0 Ok
Power On Time : 6028
Health Status : Ok
El hecho de que el hardware ECC recuperado es mayor que la tasa de error de lectura sin procesar es contra intuitivo en mi opinión.
Esto es lo que he encontrado como una unidad Seagate "normal" donde el ECC recuperado coincide con la tasa de error de lectura sin procesar:
HD Tune: ST380011A Health
ID Current Worst ThresholdData Status
(01) Raw Read Error Rate 62 46 6 79986164 Ok
(03) Spin Up Time 98 98 0 0 Ok
(04) Start/Stop Count 100 100 20 6 Ok
(05) Reallocated Sector Count 100 100 36 0 Ok
(07) Seek Error Rate 83 60 30 210309663 Ok
(09) Power On Hours Count 93 93 0 6516 Ok
(0A) Spin Retry Count 100 100 97 0 Ok
(0C) Power Cycle Count 99 99 20 1325 Ok
(C2) Temperature 25 52 0 25 Ok
(C3) Hardware ECC Recovered 62 46 0 79986164 Ok
(C5) Current Pending Sector 100 100 0 0 Ok
(C6) Offline Uncorrectable 100 100 0 0 Ok
(C7) Ultra DMA CRC Error Count 200 188 0 18 Ok
(C8) Write Error Rate 100 253 0 0 Ok
(CA) TA Counter Increased 100 253 0 0 Ok
Power On Time : 6516
Health Status : Ok
EDITAR:
Quiero aclarar que sé que Google generalmente considera que SMART es inútil. Sé que todos deberían hacer una copia de seguridad de sus datos. Sin embargo, estoy en el negocio de arreglar las computadoras de otras personas. La mayoría de las personas no tienen copias de seguridad o RAID. No es rentable para las empresas solucionar problemas de los discos duros, por lo que simplemente los ejecutan en un RAID hasta que mueren. Me resulta útil en mi línea de trabajo verificar el estado INTELIGENTE del disco duro. Tarda como 30 segundos. Si tengo la suerte de que una unidad de disco defectuosa muestre un indicio de falla, como errores de escaneo o sectores reasignados, sé cómo sacar la unidad de allí. Si no existe tal sugerencia, probablemente pasaré muchas horas resolviendo problemas de lentitud y corrupción de datos hasta que finalmente encuentre que el disco duro está dañado.
Solo estoy tratando de afinar este proceso.