我有一块很小很旧的硬盘,大约 32G。
我把一个比较大的 tar 文件(大约 5G)复制到了这块硬盘上。
当我运行 md5sum 来生成此文件的校验和时,我反复得到不同的结果(在同一台机器和同一个文件上)。这显然不应该发生。
如果我使用一个小得多的文件重复实验,正如预期的那样,每次的校验和都相同。我只能假设,由于大文件占据了大部分磁盘,并且它是一个旧驱动器,所以我在硬盘上遇到了很多读取错误 - 需要更换吗?这还有其他好的理由吗?除了购买新磁盘外,我还能做些什么来解决这个问题?
更新:sha1sum 也产生不一致的结果。
答案1
修复磁盘错误可能值得一试fsck
(或与您使用的文件系统相当)。但是,如果硬盘快报废了,这可能是它最后能做的事情了。
答案2
唯一可能的原因是磁盘坏或 RAM 坏,由于磁盘较旧并且您没有遇到其他问题,因此 RAM 问题的可能性较小。
这可能是一个不可靠的连接器/控制器:我曾经遇到过 IDE->USB 适配器坏了,导致传输损坏,尽管驱动器完好无损。
答案3
为了安全起见,我建议你跑memtest86+整夜检查以确保没有发现内存错误。
答案4
sha1sum
有同样的行为吗?
在收到改变哈希过程的幻影数据之前,我预计会出现磁盘读取错误。您在哪个平台上运行?