如何检查整个硬盘是否有错误和坏扇区

如何检查整个硬盘是否有错误和坏扇区

我可能在这里误解了一些概念,但据我所知,每个磁盘都有一个分区表和实际分区。

我正在测试硬盘驱动器是否有坏扇区和错误,但我发现执行此操作的工具适用于分区,而不是磁盘。不badblocks占用一个分区。同样的故事与./dev/sda1/dev/sdae2fsck

据我了解,这些工具仅测试分配给分区的空间,而不是整个磁盘。有没有办法测试整个磁盘?

答案1

有没有办法测试整个磁盘?

是的,使用badblocks

badblocks /dev/sda

联机帮助页引用分区,因为badblocks可以告诉mkfs.ext2它找到的坏块,并且仅在检查分区时才有效。但badblocks它本身在完整磁盘上运行良好。

然而,这badblocks确实是过去时代的遗迹,当时硬盘驱动器无法自行管理坏块。如今,驱动器本身会跟踪错误,并且能够在情况允许的情况下重新映射坏扇区(通常是在重写坏扇区时)。您最好运行 SMART 测试并检查结果:

smartctl -t long /dev/sda
smartctl -t offline /dev/sda
smartctl -x /dev/sda

(确保在运行下一个测试之前完成每个测试)。

相关内容