web-dev-qa-db-fra.com

est-il possible de récupérer des blocs défectueux?

J'ai un disque dur interne de 500 Go et de la sortie de dmesg j'ai eu cette "merveilleuse" nouvelle:

[  324.434832] end_request: I/O error, dev sde, sector 4715026720
[  324.434838] Buffer I/O error on device sde1, logical block 589378084
[  324.434854] Buffer I/O error on device sde1, logical block 589378085
[  324.434858] Buffer I/O error on device sde1, logical block 589378086
[  324.434862] Buffer I/O error on device sde1, logical block 589378087
[  324.434866] Buffer I/O error on device sde1, logical block 589378088
[  324.434870] Buffer I/O error on device sde1, logical block 589378089
[  324.434873] Buffer I/O error on device sde1, logical block 589378090
[  324.434877] Buffer I/O error on device sde1, logical block 589378091
[  324.434881] Buffer I/O error on device sde1, logical block 589378092
[  324.434884] Buffer I/O error on device sde1, logical block 589378093

Je me demandais s'il y avait un moyen "d'éliminer" cette zone du disque dur (comme le couvrir ou bloquer l'accès) et le reformater donc quand j'utilise la partie renommée du lecteur, elle n'écrira que sur les bons secteurs .

J'utilise ce lecteur uniquement pour le stockage, même si à l'avenir, il échoue complètement, c'est ok.

1
simple mind

La commande dont vous avez besoin s'appelle badblocks .

Vérifier:

Sudo badblocks -v /dev/sde1
  • Ceci est juste pour les visualiser et est inoffensif à exécuter.

Utilisation Sudo dumpe2fs pour connaître la taille du bloc. Probablement "4096"

Et pour les marquer:

Sudo badblocks -c 4096 /dev/sde1 > /home/$USER/badblocks.txt
Sudo fsck -l /home/$USER/badblocks.txt /dev/sde1
  • La 1ère commande crée un fichier texte avec les bablocks. Sans danger. Remplacez le "4096" par ce que vous avez trouvé.
  • La 2ème commande utilise "fsck" pour marquer les blocs.
1
Rinzwind