磁盘坏道故障!

萝らか妹 提交于 2019-11-26 17:29:52

检测坏道命令:[root@localhost ~]# sudo badblocks -v /dev/硬盘

dmesg

当有硬盘坏道时,通常在dmesg输出的信息中会有 Buffer I/O Error,所以经常检查dmesg的输出可以及时发现是否存在硬盘问题。

badblocks

adblocks 可以用来检查硬盘是否有坏道,也可以修复坏道,但仅限于逻辑坏道,物理坏道只能更换硬盘。

检查命令:

[root@localhost ~]# badblocks -s -v -o /root/bb.log /dev/sda

 

检查 /home 是否有坏道,则命令如下

[root@localhost ~]# badblocks -s -v -o /root/bb-home.log /dev/mapper/centos-home

 

逻辑坏道修复方式

下面是badblocks在/dev/mapper/ centos-home e分区检查出的坏道列表:

 

217874591

217874592

217874593

217874594

217874595

 

 

先备份数据

[root@localhost ~]# dd if=/dev/mapper/centos-home  skip=217874591 of=/tmp/217874591-217874595.dat count=5

 

修复

[root@localhost ~]# umount /dev/mapper/ centos-home(umount可能出现"Device busy"的错误, 解决方法fuser -m /home //列出使用/home的进程ID  fuser -m -v -i -k /home   //列出PID并kill掉进程)

修复命令:

[root@localhost ~]# badblocks -s -w /dev/mapper/ centos-home 217874595 217874591

 

修复后检查

[root@localhost ~]# badblocks -s -v /dev/mapper/ centos-home 217874595 217874591

 

恢复数据(可选)

[root@localhost ~]# dd if=/tmp/217874591-217874595.dat of=/dev/mapper/ centos-home

 

重新分区检查

[root@localhost ~]# badblocks -s -v -o /root/bb-home.log /dev/mapper/ centos-home

 

若没有坏道说明修复已完成,若有坏道可以尝试重复以上方法。

 

完成后重新mount分区

 

[root@localhost ~]# mount /dev/mapper/ centos-home

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!