1TB 硬盘上的坏块会持续多长时间?

1TB 硬盘上的坏块会持续多长时间?

我正在 1TB 驱动器上运行 badblocks(或者更确切地说是“e2fsck -c”),如果进度指示器有任何指示(没有双关语),它将需要几乎永远才能完成。

现在它说0.01% done, 30:20 elapsed这意味着这件事需要大约 17 周才能完成,在我看来这似乎有点过长。

这是进行此类检查的正常时间吗,还是仅仅是因为我的怀疑是正确的,因为驱动器出现了故障,所以导致检查时间只比永恒短一点点?

我发现这个问题这里,但这与完成的传球次数有关。

答案1

回答你的问题,我能给出的最接近的答案是我测试过的 3TB。以下是我做的 3 次测试,只更改了参数值,-c并且只做了 10% 的测试,因为它们花费了大量时间。每个测试都做了 3 次,取平均值。

请注意,“n”是一个-n选项,非破坏性写入测试。您可以将其删除以进行只读测试。也是-s为了更好进步信息和-v代表冗长

badblocks -svn /dev/sdb

达到 1%:1 小时
达到 10%:8 小时 40 分钟

badblocks -svn -b 512 -c 32768 /dev/sda

达到 1%:35 分钟
达到 10%:4 小时 10 分钟

badblocks -svn -b 512 -c 65536 /dev/sda

达到 1%:16 分钟
达到 10%:2 小时 35 分钟

所以是的,该-c参数对检查驱动器所需的时间有很大影响。我猜对于 1 TB 硬盘,假设它保持与 3TB 相同的时间范围,它将是此处提到的时间的 1/3,因此要使用-c 655361 TB HDD 达到 10%,大约需要 50 分钟。

答案2

Badblocks 运行了 4 次。在 1 TB 外部硬盘上,通常需要大约 70 小时。

答案3

尝试增加一起处理的块数量,如badblocks -svn -b 512 -c 65536 /dev/sda。这样,我可以在 8 小时内检查 1 TB 的硬盘驱动器。

答案4

前天在我的 6TB RAID 6(破坏性写入模式!)中一个发生故障的 1TB 硬盘上运行了这个程序:

# badblocks -svw -b 4096 -c 65536 /dev/sdb

主板是 ASRock Rack C2550D4I(我知道……),配有 8 个 Samsung SpinPoint M8 HN-M101MBB(我知道……)连接到 SATA3 端口。驱动器是 4K“高级格式”驱动器,因此块大小为 4K。

badblocks大约需要 28 小时才能完成,并且没有错误。

单个驱动器的读取速度约为 105 MB/秒(平均hdparm -tT缓冲读取时间),测试整个阵列时为 200–230 MB/秒。现在没有什么更好的了,但对于一堆旧的笔记本电脑驱动器来说还不错。

希望这能有所帮助,就像这个帖子帮助我找到一种在磁盘上运行坏块的快速方法一样。我知道现在它的用途令人生疑,但是当上一次smartctl -t long由于读取失败而失败时,我决定接触并重写所有扇区几次,以查看 SMART 值会如何变化。另一项smartctl测试正在进行中,如果再次失败,我将购买新驱动器。

相关内容