硬盘会撒谎吗?

Haf*_*hor 10 hard-drive filesystem-corruption

在过去,我记得收到驱动器错误,但似乎现代驱动器从不报告错误,而是尽最大努力为您返回一些东西。我最近有一个硬盘驱动器故障,相当严重,但是当它失败时它从未报告错误(或者至少 WinXP 从未出现这些错误)。我知道它失败了,因为程序开始表现不佳,最终在启动过程中死亡。当我将驱动器连接到另一台机器以读取所有内容时,我能够复制所有内容(在某些权限失败后) 并且这样做没有错误,但实际内容被存档测试证明已损坏。制造商的驱动器测试软件确定没有错误,但 SpinRite 在扫描驱动器时硬停止。我开始怀疑现代软件的不稳定性有多少是由于现代硬盘驱动器造成的。

所以问题是,现在硬盘驱动器只是在骗我们吗?具体来说,当面对不可读的扇区时,现代驱动器是否容易返回损坏的数据而不将其报告给操作系统?

chr*_*ris 10

是的,较新的硬盘驱动器对我们撒谎。您通常可以使用 SMART 监控这些谎言。

我认为这与典型盘片上的信息密度有关。设计人员假设盘片中会有缺陷,并围绕它设计固件——如果一个扇区出现故障,它会自动重新写入并且不会丢失任何数据。只有当驱动器用完备用扇区时,典型的操作系统才会注意到,此时您的数据处于危险之中。

所以,我想这个故事的寓意是使用诸如smartmontools 之类的东西来监控谎言。

  • 坏扇区不会被重写 - 现代磁盘包含备用扇区,固件使用这些备用扇区通过自动映射替换有缺陷的扇区。 (5认同)