硬盘坏道修复

588次阅读

卸载硬盘

umount /dev/sdb

如果提示”Device busy”是因为有程序在使用这个分区,需要将这些进程都关闭。需要使用命令查看哪些进程使用了该目录。

fuser -m /home
fuser -m -v -i -k /home

第一条fuser命令列出使用/home的进程ID,第二条列出PID并kill掉进程(带有提示确认),建议先使用第一条命令列出PID,然后针对查看是哪些类型的进程,不要盲目杀死进程。

检索坏道

badblocks -s -v -o /root/sdb.txt /dev/sdb

查看一下结果

cat /root/sdb.txt
2630001136
2630001137

修复硬盘

badblocks -s -w /dev/sdb 2630001137 2630001136

有需要可以再检查一下指定块

badblocks -s -v /dev/sdb 2630001137 2630001136

badblocks具体用法

badblocks [-svw][-b <区块大小>][-o <输出文件>][磁盘装置][磁盘区块数][启始区块]
  • -b<区块大小> 指定磁盘的区块大小,单位为字节。
  • -o<输出文件> 将检查的结果写入指定的输出文件。
  • -s 在检查时显示进度。
  • -v 执行时显示详细的信息。
  • -w 在检查时,执行写入测试。
  • [磁盘装置] 指定要检查的磁盘装置。
  • [磁盘区块数] 指定磁盘装置的区块总数。
  • [启始区块] 指定要从哪个区块开始检查。
正文完