md5sum неоднократно выдает разные контрольные суммы для одного и того же файла на одной и той же машине

md5sum неоднократно выдает разные контрольные суммы для одного и того же файла на одной и той же машине

У меня очень маленький и довольно старый жесткий диск, около 32G.
На этот диск я скопировал довольно большой файл tar, около 5G.

Когда я запускаю md5sum для генерации контрольной суммы этого файла, я постоянно получаю разные результаты (на одной и той же машине и в одном и том же файле). Очевидно, что этого не должно происходить.

Если я повторю эксперимент с гораздо меньшим файлом, как и ожидалось, контрольная сумма будет одинаковой каждый раз. Я могу только предположить, что поскольку большой файл занимает большую часть диска, а это старый диск, я получаю много ошибок чтения на жестком диске - и его нужно заменить? Может ли быть какая-то другая веская причина для этого? Что-то, что я могу сделать, чтобы исправить проблему, кроме покупки нового диска?

Обновление: sha1sum также выдает непоследовательные результаты.

решение1

Может быть, стоит запустить fsck(или эквивалент для любой файловой системы, которую вы используете) для исправления ошибок диска. Но это может быть последнее, что сделает этот диск, если он на последнем издыхании.

решение2

Единственными вероятными причинами являются неисправный диск или неисправная оперативная память, а поскольку диск старый и вы не испытываете других проблем, то маловероятно, что проблема в оперативной памяти.

Это может быть неисправный разъем/контроллер: однажды у меня вышел из строя адаптер IDE->USB, что привело к повреждению данных при передаче, хотя сам привод был в полном порядке.

решение3

Чтобы быть в безопасности, я предлагаю вам бежатьmemtest86+в течение ночи, чтобы убедиться в отсутствии ошибок памяти.

решение4

Имеет ли он sha1sumтакое же поведение?

Я бы ожидал ошибок чтения с диска перед получением фантомных данных, которые изменяют процесс хеширования. На какой платформе вы работаете?

Связанный контент