Encore merci pour ton aide Chalu. Je me suis basé sur cette page pour "réparer" mon disque.
J'ai scanné le disque :
root@debian:~# badblocks -sv -b 512 /dev/sda >> /tmp/badblocks.txt
Checking blocks 0 to 976773167
Checking for bad blocks (read-only test) 37.37% done, 1:00:00 elapsed. (0/0/0 errors.done
Pass completed, 16 bad blocks found. (16/0/0 errors)
et j'ai obtenu la liste des secteurs défectueux :
# cat /tmp/badblocks.txt
563647792
563647793
563647794
563647795
563647796
563647797
563647798
563647799
563647800
563647801
563647802
563647803
563647804
563647805
563647806
563647807
Que j'ai corrigés en adaptant le script donné par LDVC sur aplu.fr à mon cas :
# cat /home/user/script-reallocation-secteurs
#!/bin/bash
# script forblocs.sh qui répare automatiquement les blocs entre 563647792 et 563647807.d'après https://www.aplu.fr/v2/post/2016/01/07/forcer-un-disque-a-reallouer-des-secteurs-defectueux
for i in `seq 563647792 563647807`;
do
clear
echo $i" / 117231407"
sleep 0.04
hdparm --yes-i-know-what-i-am-doing --write-sector $i /dev/sda
hdparm --read-sector $i /dev/sda
done
exit
J'ai perdu la fenêtre de console contenant l'exécution du script (je ne peux pas la recopier), mais tout semblait bien s'être bien passé.
J'ai vérifié les secteurs individuellement :
# hdparm --read-sector 563647792 /dev/sda
/dev/sda:
reading sector 563647792: succeeded
6942 296f 05e9 e62a 009c 05a4 a011 0aa3
008c 461d 8572 7d54 6337 3215 15ab 5ff7
e35c 5e37 59de bc50 bb9b e02b 8d13 362d
5d86 bc69 f9bc bdf9 fdef 2dfa b1db 4dca
d72a c259 c464 9ab1 c466 a59a 7956 fc50
5e27 a880 15ee a027 494c 0204 3312 e519
e955 b6cb 32ea 7a7f 6936 ee48 1d52 e001
8fb5 6605 ff73 e1d8 201c 2c3c e083 e405
9678 7894 fc00 f418 ad14 e843 250c 047f
c2a9 16ea 389a 5386 ef57 5839 1386 1866
0e22 4cbd 1fab 6de5 ca85 fbcd 5f53 09bb
d331 0beb d3df f518 395c 8a58 5908 eee8
df81 b877 eb17 6085 b6c7 3d3f 5b95 5458
a8b3 4768 df75 d52a a7a8 1bb5 11be 9bde
baff 3f58 690c a838 3ac1 2aac c81b 33e3
2eb9 1638 3089 1596 a050 e01d 3032 e293
d28e cd10 3659 052a 74e5 313e 5cf9 32c8
496d cade da66 5078 3650 3ca1 973d f41e
353a 5706 a1c0 bc76 eae3 971a 3ef1 081d
578f 054b e025 8a0e 2ab1 44b4 bb1b 3ab9
f596 936c 7b3d df0e e5aa aa37 c41d 84a3
7d97 e7f2 bf07 f8d1 7d3e 9192 ab35 495f
96ef a49f f3d9 95ba 7874 b2e8 b3c7 318c
9128 cae2 7aa4 aee1 3bc6 9244 ba08 a022
16b6 bfa5 f7cb 9784 99d4 278d 18e5 3f11
439e d9b5 1973 a4e8 5a5a a2a8 61d7 0353
1ba5 73b1 4ca4 56aa 3187 6e86 f1c7 7fd7
8f0e 380e 6ae1 e430 1003 abc0 3905 8069
f5ff 4ff4 030e a351 639b 8d86 4907 e2a7
1f63 b18e 1c00 ee18 ad14 e81d 12c7 4363
a084 2047 fe3b 8bab 7057 b3a0 b45d f2d6
5311 1323 3360 8a12 4e27 935b be7f de96
Idem pour les secteurs suivants jusqu'à 563647798. Mais
# hdparm --read-sector 563647799 /dev/sda
/dev/sda:
reading sector 563647799: SG_IO: bad/missing sense data, sb[]: 70 00 03 00 00 00 00 0a 40 51 e0 01 11 04 00 00 a0 37 00 00 00 00 00 00 00 00 00 00 00 00 00 00
succeeded
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
Idem jusqu'à 56364801. Puis de nouveau test réussi jusqu'au dernier secteur. Moralité, plus que trois secteurs défaillants.
J'ai essayé de les rectifier à la main :
# hdparm --yes-i-know-what-i-am-doing --write-sector 563647799 /dev/sda
/dev/sda:
re-writing sector 563647799: succeeded
Et là on dirait que c'est bon (?)
# hdparm --read-sector 563647799 /dev/sda
/dev/sda:
reading sector 563647799: succeeded
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
Idem pour les autres secteurs récalcitrants.
Je ne comprends pas tout, mais j'ai l'impression que tout est corrigé à présent...
Il ne reste plus qu'à tout réinstaller sur mon Mac, avec un beau dd tout propre
J'ai également trouvé ceci (le script scanne puis corrige tout seul), je vais essayer de l'utiliser pour réparer un dd externe qui fait des siennes et que j'ai dû péniblement reformater, mais qui s'obstine à mal fonctionner.