md5sum 对同一台机器上的同一文件反复给出不同的校验和

Joe*_*oel 4 linux filesystems hard-drive hash

我有一个很小而且很旧的硬盘,大约32G。
在这个磁盘上,我复制了一个较大的 tar 文件,大约 5G。

当我运行 md5sum 在这个文件上生成校验和时,我反复得到不同的结果(在同一台机器和同一个文件上)。这显然不应该发生。

如果我用一个小得多的文件重复实验,正如预期的那样,每次的校验和都是相同的。我只能假设,因为大文件跨越了大部分磁盘,而且它是一个旧驱动器,我在硬盘驱动器上遇到了很多读取错误 - 它需要更换吗?这还有什么其他好的理由吗?除了购买新磁盘之外,我还能做些什么来解决问题?

更新:sha1sum 也会产生不一致的结果。

Dav*_*ett 10

唯一可能的原因是磁盘坏了或 RAM 坏了,而且由于磁盘很旧并且您没有遇到其他问题,因此不太可能是 RAM。

它可能是一个狡猾的连接器/控制器:我曾经有一个 IDE->USB 适配器坏了导致传输损坏,即使驱动器非常好。


spo*_*son 6

可能值得运行fsck(或等效于您使用的任何文件系统)来修复磁盘错误。但是,如果它处于最后阶段,这可能是该驱动器所做的最后一件事。

  • 您仍应尽快更换驱动器。 (2认同)
  • 他确实说这是一个很小的旧驱动器。但是,如果值得保留,您可以查看 Spinrite 进行分析和修复。它可以告诉您驱动器的损坏程度。 (2认同)