哈希检查失败和损坏的存档:为什么不稳定的内存是你文件损坏的真正原因
当数据丢失发生时,SSD 常常是首要嫌疑。但是,即使你的 SSD 健康状况为 100%,你的数据也可能会损坏,有时,这时并不是驱动器的错。
许多人忘记了,驱动器本身只是更大拼图的一部分,如果哪怕有一件事出错,你可能会发现自己丢失数据——是的,即使存储设备完全健康。
为什么数据损坏并不总是固态硬盘的原因
把责任归咎于 SSD 很容易,但有时,更重要的是深入探究。
如果你掉入“备份完成”的陷阱,发现自己有看似可用但实际上不起作用的备份,很容易将责任归咎于你的 SSD。我不会对你撒谎:很多时候,问题确实出在存储设备上。我自己也遇到过类似的问题,不久前就有一块 SSD 出现了严重故障。
但有时,SSD是无辜的。如果你的文件总是损坏,还有另一种可能:可能是你的电脑在数据到达硬盘之前就已经损坏了,而你可怜的SSD仍会毫无怨言地写入这些数据。
这一切都是因为你的 SSD 只是硬件和驱动程序长链中的一部分。如果其他部分出现故障,数据可能在传输过程中被损坏,而 SSD 可能不会察觉。驱动器不会判断你的文件,它只是存储操作系统发送的数据。
关键点在于,固态硬盘(SSD)本身可以完全健康,而数据可能并不健康,就像固态硬盘可以发生故障,而各种软件仍认为它是健康的一样。不幸的是,驱动健康工具主要告诉你的是 NAND 和控制器的情况,而不是系统最初交给它的字节是否正确。
这也是为什么即使你仍在处理损坏的安装、失败的游戏补丁或无法解压的档案时,SMART 看起来仍然完美的原因。如果 SSD 在硬件层面从未检测到错误,它就没有任何东西可以报告。
所以,如果你遇到损坏的文件,但SSD本身看起来没问题,看看你的数据在到达存储设备之前经过的路径。
不稳定的内存如何产生损坏的文件
好像现在的 RAM 问题还不够麻烦一样……
在RAM灾难中,任何人最不想听到的就是他们的RAM有问题。但不幸的是,如果你发现文件损坏,RAM可能是其中的一个原因。
RAM 问题并不总是通过严重崩溃表现出来(幸好如此)。但数据要被损坏,只需偶尔一次故障即可。你的电脑首先在内存中加载和构建数据,然后再写入存储。如果在错误的时刻 RAM 中的某一位翻转,那么你的 SSD 可能会写入一个在技术上没问题但逻辑上已损坏的文件。
考虑到RAM的特性,这些问题的症状可能感觉很随机。一个文件可能完全正常,但下一个文件就不行;一次安装可能顺利完成,而另一次安装会失败。这种随机性可能更指向RAM而不是SSD。
某些工作负载更容易触发这些问题,而这些正是对 RAM 造成较大压力的工作负载:巨大的文件传输、解压大型档案、编译着色器等。基本上,每当你的系统在内存中移动大量数据并进行检查时,如果你的 RAM 不稳定,你的数据可能会有危险。
最常见的两个罪魁祸首
除了 SSD 之外。
假设你的 SSD 完全正常,并没有被某种隐藏的问题损坏,但你仍然遇到文件损坏的情况。
在那种情况下,两个常见问题是内存超出了安全范围,或者降压/超频并不像看起来那么稳定。
第一个是英特尔的 XMP 或 AMD 的 EXPO。我们大多数人将内存超频视为基础,这确实如此,这是释放内存真正潜力的唯一方式。但激进的超频可能会导致不稳定的问题。为了顺利运行,超频依赖于你的 CPU 的内存控制器、你的 BIOS 以及特定的内存套件能够良好配合。如果情况处于边缘状态,你的电脑可能不会直接崩溃,但仍可能出现错误数据,进而导致文件损坏。
测试 RAM 是否是罪魁祸首的最简单方法是暂时放弃超频。将你的 RAM 运行在默认的 JEDEC 设置下,然后重复之前出错的操作,比如重新下载相同的文件或解压相同的压缩包。一切正常吗?那么,也许你需要尝试一个不那么激进的内存配置文件。
第二个常见原因是降压,我主要指的是 CPU(虽然 GPU 降压不当也可能导致不稳定)。降压可能很棘手,因为一台电脑在游戏中可能感觉很稳定,但在像解压、安装、编译着色器或重度多任务这样的突发工作负载下仍然可能计算错误。
这里的解决方法很明显:将电压和时钟设置恢复到默认值,看看情况是否有所改善。如果改善了,你可能需要在降压时稍微调回一些。
泄露迹象表明问题出在系统,而不是存储
“不是我,是你,”你的 SSD 说。
排查电脑问题通常可能是一整天的项目,所以如果你正在调查这个问题,我很同情。通常没有简单的方法来确定究竟是哪里出错,有时只能通过逐一排除列表中的各项,直到找到正确答案。
如果SSD确实是数据损坏情况的罪魁祸首,错误往往是持续的并且与驱动器相关。同时,如果是你的电脑(或者说其他组件)的问题,错误通常是不一致的,并且与工作负载相关。
最大的警示信号是相同的操作产生不同的结果。比如你下载同一个文件两次,而其中一份校验哈希失败(或者更简单地说,就是文件根本无法加载),这是健康的 SSD 不会出现的情况。如果一个压缩包有时候能解压,有时候却报错,那就是稳定性警告。
通常,判断是电脑还是硬盘出现问题的最简单方法就是换一个硬盘使用,看看这些相同的错误是否仍然出现。如果使用外部 SSD 时仍然遇到问题,那么硬盘几乎可以肯定不是问题所在。
注意在内存密集型任务中出现的错误,例如解压、大量更新以及移动包含大量文件的巨大文件夹。这些操作会快速通过内存传输大量数据。
为了彻底解决问题,消除所有可能的故障点。去掉任何超频和降压,将所有设置恢复为默认,然后在每次“降级”后进行压力测试。到某个阶段,它要么运行正常(这意味着问题出在电脑上),要么仍然故障,这种情况下,SSD 很可能是罪魁祸首。在另一台电脑上测试它以最终确定问题。




