使用hdparm修复硬盘损坏扇区

    刚买不到一年的WD5000BEVT竟然出现了坏扇区。。。。fxxk,通过smart知道了926226227扇区处。本来想观察几天,结果smart里面的“待重分配扇区数“还是1,hdtune显示一个刺眼的黄条。。。

    决定搞定它。写了个简单的程序,直接读取那个扇区,结果整个系统卡死,cpu占用显示全部用做iowait了。。大概10秒后给我抛出了一个EIO错误。

    后来查资料,得知要想强制硬盘对那一块扇区重分配,必须写失败才可以,于是修改代码,read改成write,结果像read一样卡死+EIO错误。。。

    看dmesg的信息,即使是用得到write,给磁盘发命令的时候还是要先读一下,不解。

    后来发现了hdparm,发现它号称“completely  bypassing  the usual  block  layer read/write mechanisms“,于是就试用了一下,发现问题就搞定了。。。。

猜你喜欢

转载自proton.iteye.com/blog/901211