Allo Houston, on a un problème de disque dur
Après le disque dur Hitachi, c'est au tour d'un disque dur Seagate qui est en train de mourir à mon travail.
Le problème a été décelé par un collègue qui a retrouvé la machine plantée. Il a fait moult tentatives de reboot jusqu’à ce que le système reparte. Après mon arrivée : le disque dur fonctionne, pas d'erreur E/S dans les logs système mais il est affreusement lent (visible avec la commande iostat). Un smartctl confirme le verdict de mon collègue : le disque semble bien malade.
Évidemment il s'agit d'une machine desktop (Acer Veriton M4) qui n'a qu'un seul disque donc pas de RAID. Prise de décision de tout stopper les services et de copier le disque en urgence. Il héberge une base Oracle d'ouillage et non métier, donc pas vraiment indispensable et restaurable par ailleurs. Un boot via une distrib Live Linux (PING) sur CD pour faire un dd donne un max d'erreurs et des transferts à 9Mo/s ce qui est un débit largement anormal pour une copie entre 2 disques SATA internes. En fait dd s'attarde sur les timeout de secteurs défecteux de plusieurs secondes à chaque fois et fait plusieurs tentatives. J'aurais du faire un fsck/badblocks avant.
Généralement lorsque l'on rencontre ce genre de message ce n'est clairement pas bon signe... Comme cette semaine je suis en congés, d'autres personnes vont s'occuper le lui et je ne pourrais avoir la suite de l'histoire que dans quelques jours.
MAJ le 15/05
La copie dd avec l'option "conv=noerror" est arrivée à son terme durant le long week-end, avec une moyenne de 56Mo/s (plus vite que prévu). L'opération a donc réussi. Ci-dessous les valeurs de la commande smartctl (sortie tronquée) du nouveau disque pour comparaison.
Le problème a été décelé par un collègue qui a retrouvé la machine plantée. Il a fait moult tentatives de reboot jusqu’à ce que le système reparte. Après mon arrivée : le disque dur fonctionne, pas d'erreur E/S dans les logs système mais il est affreusement lent (visible avec la commande iostat). Un smartctl confirme le verdict de mon collègue : le disque semble bien malade.
Code BASH :
[root@xxxxxxxx log]# smartctl -d ata --all /dev/sda smartctl version 5.36 [i686-redhat-linux-gnu] Copyright (C) 2002-6 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF INFORMATION SECTION === Device Model: ST3160318AS Serial Number: 9VM8T5G2 Firmware Version: CC44 User Capacity: 160,041,885,696 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 8 ATA Standard is: Not recognized. Minor revision code: 0x29 Local Time is: Fri May 5 14:02:29 2017 CEST 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 See vendor-specific Attribute list for marginal Attributes. General SMART Values: Offline data collection status: (0x82) Offline data collection activity was completed without error. Auto Offline Data Collection: Enabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 617) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 1) minutes. Extended self-test routine recommended polling time: ( 36) minutes. Conveyance self-test routine recommended polling time: ( 2) minutes. SMART Attributes Data Structure revision number: 10 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 097 083 006 Pre-fail Always - 99879703 3 Spin_Up_Time 0x0003 097 097 000 Pre-fail Always - 0 4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 70 5 Reallocated_Sector_Ct 0x0033 002 002 036 Pre-fail Always FAILING_NOW 4045 7 Seek_Error_Rate 0x000f 080 060 030 Pre-fail Always - 102690074 9 Power_On_Hours 0x0032 045 045 000 Old_age Always - 48598 10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0 12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 70 183 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0 184 Unknown_Attribute 0x0032 100 100 099 Old_age Always - 0 187 Unknown_Attribute 0x0032 099 099 000 Old_age Always - 1 188 Unknown_Attribute 0x0032 100 090 000 Old_age Always - 68720525352 189 Unknown_Attribute 0x003a 100 100 000 Old_age Always - 0 190 Unknown_Attribute 0x0022 060 050 045 Old_age Always - 673382440 194 Temperature_Celsius 0x0022 040 050 000 Old_age Always - 40 (Lifetime Min/Max 0/15) 195 Hardware_ECC_Recovered 0x001a 044 038 000 Old_age Always - 99879703 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 240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 238950505561757 241 Unknown_Attribute 0x0000 100 253 000 Old_age Offline - 2640060481 242 Unknown_Attribute 0x0000 100 253 000 Old_age Offline - 1786415469 SMART Error Log Version: 1 ATA Error Count: 4 CR = Command Register [HEX] FR = Features Register [HEX] SC = Sector Count Register [HEX] SN = Sector Number Register [HEX] CL = Cylinder Low Register [HEX] CH = Cylinder High Register [HEX] DH = Device/Head Register [HEX] DC = Device Command Register [HEX] ER = Error register [HEX] ST = Status register [HEX] Powered_Up_Time is measured from power on, and printed as DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes, SS=sec, and sss=millisec. It "wraps" after 49.710 days. Error 4 occurred at disk power-on lifetime: 48574 hours (2023 days + 22 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 04 71 04 9d 00 32 e0 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- ec 00 00 00 00 00 a0 00 34d+12:23:30.820 IDENTIFY DEVICE 00 00 00 00 00 00 00 ff 34d+12:23:30.518 NOP [Abort queued commands] 00 00 00 00 00 00 00 ff 34d+12:22:55.204 NOP [Abort queued commands] ec 00 00 00 00 00 a0 00 34d+12:22:50.199 IDENTIFY DEVICE 00 00 00 00 00 00 00 ff 34d+12:22:49.897 NOP [Abort queued commands] Error 3 occurred at disk power-on lifetime: 48574 hours (2023 days + 22 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 04 71 04 9d 00 32 e0 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- ec 00 00 00 00 00 a0 00 34d+12:22:50.199 IDENTIFY DEVICE 00 00 00 00 00 00 00 ff 34d+12:22:49.897 NOP [Abort queued commands] 00 00 00 00 00 00 00 ff 34d+12:22:14.543 NOP [Abort queued commands] ec 00 00 00 00 00 a0 00 34d+12:22:09.538 IDENTIFY DEVICE 00 00 00 00 00 00 00 ff 34d+12:22:09.235 NOP [Abort queued commands] Error 2 occurred at disk power-on lifetime: 48574 hours (2023 days + 22 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 04 71 04 9d 00 32 e0 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- ec 00 00 00 00 00 a0 00 34d+12:22:09.538 IDENTIFY DEVICE 00 00 00 00 00 00 00 ff 34d+12:22:09.235 NOP [Abort queued commands] 00 00 00 00 00 00 00 ff 34d+12:21:33.883 NOP [Abort queued commands] 60 00 00 c0 f5 95 40 00 34d+12:20:52.495 [RESERVED FOR SERIAL ATA] 61 00 c0 08 85 73 46 00 34d+12:20:52.494 [RESERVED FOR SERIAL ATA] Error 1 occurred at disk power-on lifetime: 48574 hours (2023 days + 22 hours) ...
Évidemment il s'agit d'une machine desktop (Acer Veriton M4) qui n'a qu'un seul disque donc pas de RAID. Prise de décision de tout stopper les services et de copier le disque en urgence. Il héberge une base Oracle d'ouillage et non métier, donc pas vraiment indispensable et restaurable par ailleurs. Un boot via une distrib Live Linux (PING) sur CD pour faire un dd donne un max d'erreurs et des transferts à 9Mo/s ce qui est un débit largement anormal pour une copie entre 2 disques SATA internes. En fait dd s'attarde sur les timeout de secteurs défecteux de plusieurs secondes à chaque fois et fait plusieurs tentatives. J'aurais du faire un fsck/badblocks avant.
Généralement lorsque l'on rencontre ce genre de message ce n'est clairement pas bon signe... Comme cette semaine je suis en congés, d'autres personnes vont s'occuper le lui et je ne pourrais avoir la suite de l'histoire que dans quelques jours.
MAJ le 15/05
La copie dd avec l'option "conv=noerror" est arrivée à son terme durant le long week-end, avec une moyenne de 56Mo/s (plus vite que prévu). L'opération a donc réussi. Ci-dessous les valeurs de la commande smartctl (sortie tronquée) du nouveau disque pour comparaison.
Code BASH :
[root@xxxxxxxx ~]# smartctl --all -d ata /dev/sda smartctl version 5.36 [i686-redhat-linux-gnu] Copyright (C) 2002-6 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF INFORMATION SECTION === Device Model: WDC WD3200AAJS-22B4A0 User Capacity: 320,072,933,376 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: Mon May 15 10:33:30 2017 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === 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 - 15616 3 Spin_Up_Time 0x0027 153 153 021 Pre-fail Always - 3333 4 Start_Stop_Count 0x0032 099 099 000 Old_age Always - 1218 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 074 074 000 Old_age Always - 19272 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 099 099 000 Old_age Always - 1217 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 47 193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 1218 194 Temperature_Celsius 0x0022 106 087 000 Old_age Always - 37 196 Reallocated_Event_Count 0x0032 199 199 000 Old_age Always - 1 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 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1