URL: https://linuxfr.org/users/zezinho/journaux/secteurs-defectueux Title: Secteurs défectueux Authors: ʭ ☯ Date: 2015年02月15日T00:38:19+01:00 License: CC By-SA Tags: astuce, script et badblocks Score: 19 Avec des disques durs des millions de fois plus vastes qu'en 1990, la problématique des secteurs défectueux est devenu aiguë : on va pas se laisser emm... par un secteur défectueux sur un milliard! Bref, j'ai découvert avec un premier secteur défectueux dans un disque USB externe de 500Go qu'il y a encore des disques qui ne ré-allouent pas automatiquement les secteurs à problèmes. Du coup, ce secteur continue de poser problème, alors que la réserve de secteurs sains du disque n'est pas touchée. Que diantre! Alors le 'ternet du coin m'a appris un truc : dans ces cas-là, il faut écrire dans ce secteur défectueux, ça force sa ré-allocation. En pratique, si on a un message de ce genre dans le dmesg : `I/O error, dev sda, sector 65849819` On peut vérifier que c'est bien ce secteur qui est illisible : `hdparm --read-sector 65849819 /dev/sda` Si ça se confirme, on peut forcer sa ré-allocation en l'écrasant (vous loupez pas, vous risquez d'abimer le système de fichiers) : `hdparm --write-sector 65849819 --yes-i-know-what-i-am-doing /dev/sda` Tout ça est très bien, mas je suis tombé sur un disque têtu, qui avait une trentaine de secteurs ripoux. J'allais quand même pas me taper le sale boulot à la mimine, j'ai donc automatisé la détection/réallocation : ```sh export i=0; while true; do echo -n "$i "; if dd if=/dev/sda of=/dev/null count=1 skip=$i 2>/dev/null; then echo OK ; else echo KO; hdparm --write-sector $i --yes-i-know-what-i-am-doing /dev/sda ; fi; let i+=1; done ``` Comme d'hab, l'utilisez pas sans comprendre : il faut remplacer sda par le disque concerné, et on peut commencer qu'au secteur qui nous intéresse...

AltStyle によって変換されたページ (->オリジナル) /