badblocks是linux及其类似的操作系统中,扫描检查硬盘和外部设备损坏扇区的命令工具。损坏的扇区或者损坏的区块是硬盘中因为永久损坏或者是操作系统不能读取的空间。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauoXe0Umd0QHM55WN592YsVHM0kTM5AzLcVjMvwFOwQTMwIzLc1WdixWYvwFduVWboNWY0RXYvwVY0FGZvwVZt5CevJWcu42Y4VnbpxWLuR2Lc9CX6MHc0RHaiojIsJye.jpg)
badblocks命令可以探测硬盘中所有损坏的扇区或者区块并将结果保存在一个文本文档中,这样,我们就可以使用e2fsck命令来配置操作系统不在这些损坏的扇区中存储数据。
# sudo fdisk -l
<a target="_blank"></a>
# sudo badblocks -v /dev/sdb > /tmp/bad-blocks.txt
只需将“/dev/sdb”替换为自己机器的硬盘/分区。执行完成上述命令后,一个名为“bad-blocks”文本文档将会在/tmp下创建,它将包含所有的损坏区块。
例如:
扫描完成后,如果损坏区块被发现了,然后通过e2fsck命令使用“bad-blocks.txt”,强迫操作系统不使用这些损坏的区块存储数据。
# sudo e2fsck -l /tmp/bad-blocks.txt /dev/sdb
注意:在运行e2fsck命令前,请保证设备没有被挂载。
关于badblocks和e2fsck命令的更多帮助,请参考下列man页面
# man badblocks
# man e2fsck
原文发布时间:2014-08-25
本文来自云栖合作伙伴“linux中国”