Problème d'accès à certains secteurs du disque dur

Le problème exposé dans ce sujet a été résolu.

Bonjour tout le monde,

Mon PC portable avec un HDD, acheté fin août, tourne sous Arch avec un système de fichiers Btrfs. Je n'ai pas eu de problème jusqu'à vendredi soir. La semaine passée, je ne l'ai pas utilisé et je n'avais absolument aucun problème le week-end dernier. Quand j'ai voulu mettre à jour avec sudo pacman -Syu, j'ai eu une magnifique bus error: zsh: bus error sudo pacman -Syu.

J'en menais pas large alors j'ai lancé dmesg | tail pour voir le résultat. Et merde. C'est pas un souci logiciel:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
[ 1540.558573] ata1.00: status: { DRDY ERR }
[ 1540.558575] ata1.00: error: { UNC }
[ 1540.580751] ata1.00: configured for UDMA/133
[ 1540.580763] sd 0:0:0:0: [sda] tag#21 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[ 1540.580765] sd 0:0:0:0: [sda] tag#21 Sense Key : 0x3 [current] [descriptor] 
[ 1540.580767] sd 0:0:0:0: [sda] tag#21 ASC=0x11 ASCQ=0x4 
[ 1540.580769] sd 0:0:0:0: [sda] tag#21 CDB: opcode=0x28 28 00 03 9a 02 18 00 00 08 00
[ 1540.580771] blk_update_request: I/O error, dev sda, sector 60424728
[ 1540.580774] BTRFS: bdev /dev/sda3 errs: wr 0, rd 218, flush 0, corrupt 0, gen 0
[ 1540.580793] ata1: EH complete

Pour moi ça veut dire que le disque dur est en train de me lâcher. J'ai fait une dernière sauvegarde vite fait de mon /home et puis c'est le tour des tests SMART. J'ai juste eu le temps de faire le test court:

1
2
3
4
5
6
7
$ sudo smartctl -t short /dev/sda
$ sudo smartctl -H /dev/sda
smartctl 6.4 2015-06-04 r4109 [x86_64-linux-4.3.3-2-ARCH] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org

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

A priori ça a l'air d'aller. Sauf que si on regarde le log complet

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
smartctl 6.4 2015-06-04 r4109 [x86_64-linux-4.3.3-2-ARCH] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     HGST HTS545050A7E680
Serial Number:    RB050AM51DSJSJ
LU WWN Device Id: 5 000cca 7a3d3e453
Firmware Version: GR2OA3B0
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Form Factor:      2.5 inches
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS T13/1699-D revision 6
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Jan 24 22:55:24 2016 CET
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

General SMART Values:
Offline data collection status:  (0x00)    Offline data collection activity
                  was never started.
                  Auto Offline Data Collection: Disabled.
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:       (   45) seconds.
Offline data collection
capabilities:           (0x5b) SMART execute Offline immediate.
                  Auto Offline data collection on/off support.
                  Suspend Offline collection upon new
                  command.
                  Offline surface scan supported.
                  Self-test supported.
                  No 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:   (   2) minutes.
Extended self-test routine
recommended polling time:   ( 109) minutes.
SCT capabilities:         (0x003d) SCT Status supported.
                  SCT Error Recovery Control supported.
                  SCT Feature Control supported.
                  SCT Data Table supported.

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     0x000b   096   096   062    Pre-fail  Always       -       589824
 2 Throughput_Performance  0x0005   100   100   040    Pre-fail  Offline      -       0
 3 Spin_Up_Time            0x0007   253   253   033    Pre-fail  Always       -       0
 4 Start_Stop_Count        0x0012   095   095   000    Old_age   Always       -       9319
 5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
 7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
 8 Seek_Time_Performance   0x0005   100   100   040    Pre-fail  Offline      -       0
 9 Power_On_Hours          0x0012   099   099   000    Old_age   Always       -       523
10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       422
191 G-Sense_Error_Rate      0x000a   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       9
193 Load_Cycle_Count        0x0012   091   091   000    Old_age   Always       -       99202
194 Temperature_Celsius     0x0002   193   193   000    Old_age   Always       -       31 (Min/Max 15/43)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       11
197 Current_Pending_Sector  0x0022   095   095   000    Old_age   Always       -       352
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   200   000    Old_age   Always       -       0
223 Load_Retry_Count        0x000a   100   100   000    Old_age   Always       -       0

SMART Error Log Version: 1
ATA Error Count: 259 (device log contains only the most recent five errors)
  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 259 occurred at disk power-on lifetime: 523 hours (21 days + 19 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
 -- -- -- -- -- -- --
 40 51 08 50 5c e9 03  Error: UNC at LBA = 0x03e95c50 = 65625168

 Commands leading to the command that caused the error were:
 CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
 -- -- -- -- -- -- -- --  ----------------  --------------------
 60 08 88 50 5c e9 40 00      00:31:38.962  READ FPDMA QUEUED
 ea 00 00 00 00 00 a0 00      00:31:38.954  FLUSH CACHE EXT
 61 08 78 80 00 10 40 00      00:31:38.954  WRITE FPDMA QUEUED
 ea 00 00 00 00 00 a0 00      00:31:38.927  FLUSH CACHE EXT
 61 20 68 20 4f 43 40 00      00:31:38.927  WRITE FPDMA QUEUED

Error 258 occurred at disk power-on lifetime: 523 hours (21 days + 19 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
 -- -- -- -- -- -- --
 40 51 08 50 5c e9 03  Error: UNC at LBA = 0x03e95c50 = 65625168

 Commands leading to the command that caused the error were:
 CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
 -- -- -- -- -- -- -- --  ----------------  --------------------
 60 08 f0 50 5c e9 40 00      00:27:03.940  READ FPDMA QUEUED
 ea 00 00 00 00 00 a0 00      00:26:58.710  FLUSH CACHE EXT
 61 08 d0 00 00 10 40 00      00:26:58.710  WRITE FPDMA QUEUED
 61 08 c8 00 00 12 40 00      00:26:58.710  WRITE FPDMA QUEUED
 61 08 c0 80 00 10 40 00      00:26:58.710  WRITE FPDMA QUEUED

Error 257 occurred at disk power-on lifetime: 523 hours (21 days + 19 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
 -- -- -- -- -- -- --
 40 51 08 18 02 9a 03  Error: WP at LBA = 0x039a0218 = ``

 Commands leading to the command that caused the error were:
 CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
 -- -- -- -- -- -- -- --  ----------------  --------------------
 61 08 b0 80 00 10 40 00      00:25:41.546  WRITE FPDMA QUEUED
 60 08 a8 18 02 9a 40 00      00:25:41.546  READ FPDMA QUEUED
 ea 00 00 00 00 00 a0 00      00:25:41.449  FLUSH CACHE EXT
 61 20 98 40 75 42 40 00      00:25:41.448  WRITE FPDMA QUEUED
 61 20 90 40 72 42 40 00      00:25:41.448  WRITE FPDMA QUEUED

Error 256 occurred at disk power-on lifetime: 523 hours (21 days + 19 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
 -- -- -- -- -- -- --
 40 51 08 18 02 9a 03  Error: UNC at LBA = 0x039a0218 = 60424728

 Commands leading to the command that caused the error were:
 CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
 -- -- -- -- -- -- -- --  ----------------  --------------------
 60 08 f0 18 02 9a 40 00      00:24:44.522  READ FPDMA QUEUED
 61 10 e8 60 53 54 40 00      00:24:36.018  WRITE FPDMA QUEUED
 61 10 e0 50 92 51 40 00      00:24:16.843  WRITE FPDMA QUEUED
 ea 00 00 00 00 00 a0 00      00:24:06.139  FLUSH CACHE EXT
 61 08 c0 00 00 10 40 00      00:24:06.139  WRITE FPDMA QUEUED

Error 255 occurred at disk power-on lifetime: 522 hours (21 days + 18 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
 -- -- -- -- -- -- --
 40 51 08 50 5c e9 03  Error: UNC at LBA = 0x03e95c50 = 65625168

 Commands leading to the command that caused the error were:
 CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
 -- -- -- -- -- -- -- --  ----------------  --------------------
 60 08 f0 50 5c e9 40 00      00:20:20.835  READ FPDMA QUEUED
 60 08 e8 98 20 52 40 00      00:20:20.830  READ FPDMA QUEUED
 60 08 e0 c0 19 52 40 00      00:20:20.829  READ FPDMA QUEUED
 60 20 d8 40 33 16 40 00      00:20:20.821  READ FPDMA QUEUED
 61 08 d0 08 83 10 40 00      00:20:20.634  WRITE FPDMA QUEUED

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%       522         -
# 2  Extended offline    Aborted by host               90%       522         -
# 3  Short offline       Completed without error       00%       522         -

SMART Selective self-test log data structure revision number 1
SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
   1        0        0  Not_testing
   2        0        0  Not_testing
   3        0        0  Not_testing
   4        0        0  Not_testing
   5        0        0  Not_testing
Selective self-test flags (0x0):
 After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

On voit deux secteurs (c'est le bon terme ?) différents qui merdent: 65625168 et 60424728. Et justement c'est ce dernier qui apparaît dans dmesg | tail quand j'appelle pacman avec n'importe quel paramètre.

J'ai perdu que 4 fichiers de mon /home en tout. Si je prends un exemple, c'est la chanson 1984 de Van Halen. Si je fais ceci, j'ai:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
$ cat 1984.mp3
cat: 01 - 1984.mp3: Input/output error
$ dmesg | tail
[ 2375.248762] ata1.00: status: { DRDY ERR }
[ 2375.248763] ata1.00: error: { UNC }
[ 2375.272894] ata1.00: configured for UDMA/133
[ 2375.272908] sd 0:0:0:0: [sda] tag#27 UNKNOWN(0x2003) Result: hostbyte=0x00 driverbyte=0x08
[ 2375.272910] sd 0:0:0:0: [sda] tag#27 Sense Key : 0x3 [current] [descriptor] 
[ 2375.272911] sd 0:0:0:0: [sda] tag#27 ASC=0x11 ASCQ=0x4 
[ 2375.272913] sd 0:0:0:0: [sda] tag#27 CDB: opcode=0x28 28 00 03 9a e8 30 00 00 08 00
[ 2375.272915] blk_update_request: I/O error, dev sda, sector 60483632
[ 2375.272918] BTRFS: bdev /dev/sda3 errs: wr 0, rd 225, flush 0, corrupt 0, gen 0
[ 2375.272940] ata1: EH complete

Et ce secteur-ci c'est pas un des deux que j'ai relevé plus haut.

Du coup, je me demandais si c'est bien un souci avec le dissque dur. J'ai bien peur que oui personnellement. La machine est tout à fait utilisable, mais l'idée d'avoir des secteurs foireux me chagrine, d'autant plus que c'est une machine récente et en plus c'est un ultraportable que je peux pas démonter. La seule solution serait de le renvoyer au SAV materiel.net sachant que c'est encore sous garantie. C'est très casse-couillespieds parce que j'en ai besoin pendant la semaine pour mon TIPE et que j'ai peur qu'ils fassent traîner ça en longueur. Pacman est inutilisable, ce qui est très loin d'être pratique. En plus il y a un fichier de mon installation de Miniconda qui est HS.

Vous confirmez mon diagnostic ? Je fais quoi ?

EDIT: J'ai lancé badblocks il y a quelques minutes, il me signale plein de blocs morts. Pour l'instant il en a chopé 112 et ça grimpe vite. Le disque a pas l'air en bon état du tout manifestement. Du coup, question supplémentaire:

  • Faire confiance au SAV Asus qui va probablement prendre super longtemps ou démonter et changer le disque dur à la main ? Vu le nombre de blocs morts, j'ai bien peur qu'ils m'accusent d'avoir roulé dessus avec un tank et se débrouillent pour ne pas me corriger ça. En plus, par le passé on a eu une mauvaise expérience avec le SAV Asus sur un notebook, la carte mère a grillé, ils l'ont "remplacée" et hop ça a re-grillé. Ils ont jamais voulu le rembourser.

EDIT 2: Pendant la nuit je lui ai fait calculer le nombre de "bad blocks", il y en a au total 960 environ.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte