如何查找单个事件文件内容损坏的原因?

如何查找单个事件文件内容损坏的原因?

几天前,我将一个大文件(56GB)从工作站复制到文件服务器。检查副本后,我发现它与原始文件有几个字节不同。

细节:

  • 源系统:
  • 目标系统:
    • HP ProLiant MicroServer N36L,ECC 内存
    • Windows Server 2012 R2 标准版
    • 存储空间上的 ReFS 双向镜像

该文件通过工作站上的拖放操作从本地磁盘复制到网络共享文件夹(在服务器上)。文件大小为 56886041991 字节。

一天后以同样的方式复制的第二份文件没有问题(通过 md5sum 检查)。比较发现有 97 个字节不同。(见下文)我看到的唯一模式是损坏的字节聚集在三组中,每 128 个字节都会发生变化。

我该怎么办?从哪里开始寻找原因?不可能是服务器上的磁盘,因为如果损坏,它们会报告读取错误,即使不是,ReFS 也不会注意到错误的校验和并从另一个磁盘读取扇区,如果该扇区也损坏,它会(应该)报告读取错误。SATA 有 CRC。RAM 有 ECC。网络有 2 层校验和。工作站没有 ECC 内存。也许是网络驱动程序错误?

输出cmp -l看这里


同时进行的额外测试:

  • 24 小时memtest86+ v5.01两台电脑均无错误
  • 24 小时memtest86 v4.3.7两台电脑均无错误
  • 聪明的长时间测试所有硬盘均无错误(除了我知道的那个有几个坏扇区的硬盘,它们位于活动分区之外)
  • md5sum /dev/sdX循环中:在 5TB 磁盘上执行 5 次,在其他磁盘上执行 20 多次 - 未检测到错误
  • 按照原来的方式重复复制操作10次,检查结果:没有错误

我猜那是一道孤独的宇宙射线……

相关内容