もう、10年以上経つノートPCで、
最近、
ハードディスクの『不良セクタ』が目立ってきた。
『chkdsk』を行うと、
2万を越えた不良セクタが検出される。
さすがに、
いつお亡くなりなっても不思議ではない状況。
IDEの2.5インチは希少だし、
売ってる内に交換しておこうという事で、
早速購入。
で、
サクッとクローンして終わりかと思いきや、
不良セクタのせいで、
思いの外、
読み込みに時間が掛かり、
30時間程費やした。
まぁ、
クローンさえ出来てしまえば、
それで、御の字だったのだが、
ところが・・・
何故か?『不良セクタ』までコピーされている。
「そんな筈は無いだろう・・・・?」と、
『FromHDDtoSSD』という
HDD修復ソフトでチェックしてみたが、
物理的なエラーは検出されない。
どうやら、『不良セクタの情報』だけが残ってしまっているようだ。
しかし、
これをリセットするのは結構面倒で、
『chkdsk』の修復ではOSがXPの為、全く改善されず・・・。
(Vista以降は/bオプションで改善できるようだ)
そこで、調べてみると、
『SystemRescue』というLinuxOSで解決できる事が判明。
早速、やってみる。
が、
何故かCDブートで『startx』を入力しても、
GUIが起動せず・・・・。
恐らく、
古すぎるか、
AthlonのCPUであるの事が原因くさいが。
とは言え、
『ntfstruncate』コマンドが使えれば良いので、
そのままコマンド入力で対応した。
まず、
『NTFSの場合マウントしなさい』的な、
注意文が英文で書かれていたので、
マウントしてみたら上手くいかず・・・。
「それでは・・・・」と、
マウントせずに試してみた。
コマンドプロンプトが立ち上がった所で、
『ntfsinfo -F '$BadClus' /dev/sda1』と打ち込み、
(/dev/sda1は不良セクタの存在しているパーティション)
「Dumping attribute $DATA(0x80)from mft record 8 (0x08)」
という項目の下、
「Attribute name: 'Bad'」の下の方に
「Allocated size:」が表示されるので、
この数値をメモしておく。
次に、
「ntfstruncate /dev/sda1 8 0x80 '$Bad' 0」と打ち込みリターン。
続けて、
「ntfstruncate /dev/sda1 8 0x80 '$Bad' メモしたAllocated size」
を打ち込めば完了。
『ntfstruncate completed successfully.Have a nice day.』
と表示されればOK。
その後、Windowsの『chkdskで修復』を行えば、
不良セクタはリセットされているのが確認できる。
ただし、
この一連の作業を行うと、
『OS自体に深刻なダメージを与える』危険もあるので、
データのバックアップは必至だ。
失敗したら、
クリーンインストールするしかないだろう。