sha256sum / md5sum дает разные результаты для больших файлов (Ext4 / полное шифрование диска)

Вчера я переустановил 64-битную Ubuntu 13.04 на своем компьютере (4 ГБ ОЗУ) и впервые решил использовать Full Disk Encryption (все настройки по умолчанию).

Сегодня во время выполнения резервного копирования мой компьютер дважды зависал.

Теперь я продолжал работать над своими резервными копиями, и при проверке хеша моей резервной копии я обнаружил, что сумма sha256 показала неверный результат для большого файла.

Я пролистал / var / log / syslog и не нашел никаких ошибок, и утилита Disk также сообщает, что с диском все в порядке.

Я пытался воспроизвести эту ошибку, и для маленьких файлов у меня не было этой проблемы, но для больших файлов я делаю:

$ dd if=/dev/zero of=zeroes bs=1M count=4000 && sha256sum zeroes && sha256sum zeroes
4000+0 records in
4000+0 records out
4194304000 bytes (4,2 GB) copied, 54,0345 s, 77,6 MB/s
ad6637bd22568145039a053da5cbf4c31d3eda5ef95c29646fa66b0cacd15a8c  zeroes
8ea0d0c9ad97de182335e98045a1f197456ceee782fa6e801fd3e68bea4d35d3  zeroes

$ md5sum zeroes && md5sum zeroes 
8097877e1c991721dae7ffe228ae2f5a  zeroes
fbd1e7fcd3861446310c87abf72066bf  zeroes

Это действительно плохо, если я не могу полагаться на какие-либо моих данных, поэтому я был бы очень признателен, если бы кто-нибудь помог мне выяснить, в чем может быть проблема.

1
задан 15 August 2013 в 17:36

2 ответа

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

Запустив memtest в своей системе, вы можете убедиться в этом. Memtest с Ubuntu 12.04 live CD

Теперь вам также придется проверять все резервные копии, когда ввод / вывод проходит через память, вероятно, что резервные копии, сделанные с этой неисправной оперативной памятью, также повреждены. Обратите внимание, что это может быть слегка поврежден и его трудно обнаружить.

0
ответ дан 15 August 2013 в 17:36

Хорошо найденный :D

Воспроизведение перестало работать в моей среде. (ofcourse)

У меня есть поршень 4G, но мой coreutils[1] является версией 8.13 (Ваш 8.20), и мой диск НЕ шифруется.

Я предполагаю, что эта проблема не существовала прежде 13.04, потому что такая проблема не остается незамеченной. Таким образом, я посмотрел на журнал изменений: https://web.archive.org/web/20140618230346/http://changelogs.ubuntu.com/changelogs/pool/main/c/coreutils/coreutils_8.20-3ubuntu5/changelog

Затем я видел патч, который мог бы быть связан с этой проблемой:

coreutils (8.13-3.2ubuntu6) полный нетерпения; urgency=low

  • Бэкпорт в восходящем направлении исправляет для предотвращения повреждения данных, считанного из свободной памяти в cp/mv/install при контакте с очень фрагментированным и редким входным файлом в определенных файловых системах (LP: № 1073514). * Сборка - зависит от valgrind, чтобы смочь запустить тест для вышеупомянутого, фиксируют.

  • Зафиксируйте 99_sort_-u_data_loss.dpatch так, чтобы добавленный тест был на самом деле запущен.

Можно ли протестировать то же с версией 8.13 coreutils? (Если у меня будет время, то я протестирую его сам),

На всякий случай точно Вы шифровали свой компьютер?

Если Вы хотите далее исследовать эту проблему, то журнал изменений очень полезен. Может также случиться так, что другой патч повредил что-то.


[1]: md5sum и sha256sum является от пакета GNU coreutils

0
ответ дан 15 August 2013 в 17:36

Другие вопросы по тегам:

Похожие вопросы: