Eu tenho um pequeno servidor em um local remoto que me dá algumas dores de cabeça, já que aparentemente ele comeu o terceiro disco rígido em um slot específico em sequência.
A última substituição foi feita em maio (um WDC WD30PURX de 3 TB, se isso importa, durou apenas 8 meses) e depois de um tempo eu notei erros de leitura novamente. Eu estava me perguntando se eu sou realmente infeliz com isso, ou se há um problema com o controlador.
Normalmente, eu achava que o smart só falava sobre o que a unidade experimentava, mas depois pensei que talvez fosse possível ler bem seus setores, mas não consegui escrevê-los no controlador e isso foi registrado como um erro?
As coisas que me deixaram desconfiado foi que no dia em que descobri os alertas inteligentes na primeira vez, os setores defeituosos estavam entre 3330891687 a 3303035895, fazendo com que parecesse uma superfície ruim e executando todos os tipos de ferramentas sobre o disco rígido resultou em vários erros por lá, mas no final, cada solicitação de leitura foi bem-sucedida e, a partir de então, o setor foi "curado". Isso parecia um pouco como setores realocados para mim, mas não havia nenhum registrado.
No total, foram 4527 erros de leitura em 4153 setores diferentes, agora não consigo encontrar um único mal (correu várias vezes em todo o disco).
Depois de alguns dias, uma verificação completa do disco (inteligente e via badblocks) não revelou nenhum erro, e o disco está apresentando um bom desempenho.
Os erros apareceram no syslog como:
[517871.828215] ata6.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
[517871.828219] ata6.00: BMDMA stat 0x25
[517871.828223] ata6.00: failed command: READ DMA EXT
[517871.828229] ata6.00: cmd 25/00:00:00:4f:68/00:02:c6:00:00/e0 tag 0 dma 262144 in
[517871.828229] res 51/40:cf:30:50:68/40:00:c6:00:00/e0 Emask 0x9 (media error)
[517871.828232] ata6.00: status: { DRDY ERR }
[517871.828234] ata6.00: error: { UNC }
[517871.840411] ata6.00: configured for UDMA/133
[517871.840538] sd 5:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[517871.840543] sd 5:0:0:0: [sdd] tag#0 Sense Key : Medium Error [current] [descriptor]
[517871.840547] sd 5:0:0:0: [sdd] tag#0 Add. Sense: Unrecovered read error - auto reallocate failed
[517871.840551] sd 5:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 c6 68 4f 00 00 00 02 00 00 00
[517871.840554] blk_update_request: I/O error, dev sdd, sector 3328725040
[517871.840576] ata6: EH complete
e em S.M.A.R.T. como:
Error 4527 [14] occurred at disk power-on lifetime: 1282 hours (53 days + 10 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER -- ST COUNT LBA_48 LH LM LL DV DC
-- -- -- == -- == == == -- -- -- -- --
40 -- 51 01 00 00 00 c6 49 3c a0 e0 00 Error: UNC 256 sectors at LBA = 0xc6493ca0 = 3326688416
Commands leading to the command that caused the error were:
CR FEATR COUNT LBA_48 LH LM LL DV DC Powered_Up_Time Command/Feature_Name
-- == -- == -- == == == -- -- -- -- -- --------------- --------------------
25 00 00 01 00 00 00 c6 49 3c 00 e0 08 5d+23:59:09.617 READ DMA EXT
25 00 00 00 18 00 00 c6 49 38 e8 e0 08 5d+23:59:09.617 READ DMA EXT
25 00 00 00 10 00 00 c5 9d e7 00 e0 08 5d+23:59:09.610 READ DMA EXT
25 00 00 00 c0 00 00 c5 9d b5 00 e0 08 5d+23:59:09.581 READ DMA EXT
35 00 00 00 18 00 00 c6 49 38 e8 e0 08 5d+23:59:09.581 WRITE DMA EXT
para mim, este primeiro parece que há um erro de superfície e a realocação falhou. No entanto, eu estou acostumado a ver alguns dos contadores de valores inteligentes aumentarem, especificamente os setores pendentes atuais ou a contagem realocada do setor. Mas nenhum valor está aumentando:
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAGS VALUE WORST THRESH FAIL RAW_VALUE
1 Raw_Read_Error_Rate POSR-K 165 145 051 - 36676
3 Spin_Up_Time POS--K 100 253 021 - 0
4 Start_Stop_Count -O--CK 100 100 000 - 3
5 Reallocated_Sector_Ct PO--CK 200 200 140 - 0
7 Seek_Error_Rate -OSR-K 200 200 000 - 0
9 Power_On_Hours -O--CK 099 099 000 - 1402
10 Spin_Retry_Count -O--CK 100 253 000 - 0
11 Calibration_Retry_Count -O--CK 100 253 000 - 0
12 Power_Cycle_Count -O--CK 100 100 000 - 2
192 Power-Off_Retract_Count -O--CK 200 200 000 - 0
193 Load_Cycle_Count -O--CK 200 200 000 - 7
194 Temperature_Celsius -O---K 119 119 000 - 31
196 Reallocated_Event_Count -O--CK 200 200 000 - 0
197 Current_Pending_Sector -O--CK 200 200 000 - 0
198 Offline_Uncorrectable ----CK 100 253 000 - 0
199 UDMA_CRC_Error_Count -O--CK 200 200 000 - 0
200 Multi_Zone_Error_Rate ---R-- 001 001 000 - 102665
||||||_ K auto-keep
|||||__ C event count
||||___ R error rate
|||____ S speed/performance
||_____ O updated online
|______ P prefailure warning
TL; DR
Isso é apenas um caso de "disco rígido ruim se comportando de maneira ruim" ou há algo errado no lado do controlador? Ou mesmo S.M.A.R.T. se quebrado? Tenho a sensação de que estou perdendo algo óbvio aqui que explicaria a discrepância.
Nota: Eu tenho a substituição no modo de espera e em poucos dias eu terei a oportunidade de visitar fisicamente o servidor, então até então não se mexer ou coisas desse tipo.