首页 > 代码库 > 磁盘坏道的处理

磁盘坏道的处理

在前面,我有写到使用badblocks检查坏道。

因为badblocks只是检测坏道,然后在日志文件中标记出坏道的信息,并不会对坏道进行处理,如果希望在检测磁盘时也能跳过这些坏块不检测,可以使用fsck的-l参数。

badblocks -b 4096 -c 16 /dev/sda1 -o sda-badblocks-list 使用这个对坏掉进行检查,并保存在sda-badblocks-list中

fsck.ext4 -l /tmp/sd-badblock-list.final /dev/sda1 对磁盘进行处理,其中fsck.ext4是根据你的文件系统的。

最后就可以了


也可以在创建文件系统前检测坏道
badblocks可以随e2fsck和mke2fs的-c删除一起运行(对ext3文件系统也一样),在创建文件系统前就先检测坏道信息:
# mkfs.ext3 -c /dev/sda1
代码表示使用-c在创建文件系统前检查坏道的硬盘。
这个操作已经很清楚地告知我们可以采用“mkfs.ext3 -c”选项用“read-only”方式检查硬盘。这个命令会在格式化硬盘时检查硬盘,并标出错误的硬盘“block”。用这个方法格式化硬盘,需要有相当大的耐心,因为命令运行后,会一个个用读的方式检查硬盘。

磁盘坏道的处理