我尝试重新分配坏扇区。读完这篇文章后问题我的理解是,硬盘会自动尝试重新分配。为了触发该过程,我尝试使用 dd 写入扇区,但什么也没有改变。
$ smartctl -a /dev/sda
...
5 Reallocated_Sector_Ct ... 0
197 Current_Pending_Sector ... 1
...
坏扇区为:215040
$ dd if=/dev/sda of=/dev/null bs=512 count=1 skip=215040
io-error on reading
为什么当我写入该扇区时它没有分配?
$ dd if=/dev/zero of=/dev/sda bs=512 count=1 seek=215040
io-error on writing
我怎样才能重写该扇区?
答案1
尝试使用以下方法进行低级写入hdparm
:
sudo hdparm --yes-i-know-what-i-am-doing --write-sector 215040 /dev/sda
…215040
您要覆盖(并可能重新映射)的扇区号在哪里,以及/dev/sda
您要写入的设备在哪里。
来自hdparm
手册页:
--write-sector
将零写入指定扇区号。非常危险。此标志后必须给出扇区号(十进制)。hdparm 将向指定扇区发出低级写入(完全绕过通常的块层读/写机制)。这可用于强制驱动器修复坏扇区(介质错误)。