Каковы хорошие способы проверки целостности данных для домашнего использования с Windows?

595

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

0

4 ответа на вопрос

0
EEAA

Напишите скрипт для запуска хэша sha2 над всеми файлами в каждом месте и сравните вывод. SHA2 каждого файла должен совпадать. Если этого не произойдет, у вас нет хорошей резервной копии.

0
Darren

Вы можете использовать реализацию rsync для синхронизации каталогов, но с установленным --dry-runфлагом. Это помечает любые файлы, которые не совпадают и должны быть синхронизированы.

0
Alex

Как уже было задумано, вы можете использовать некоторую утилиту хеширования для проверки целостности файла, но она не будет сохранять / восстанавливать файлы сама.
Вы можете использовать для хеширования: DirHash, Hash-it, QuickHash или даже решение Microsoft PsFCIV.

Если вы хотите не просто проверять целостность, но и иметь возможность восстанавливать данные в случае повреждения исходных (исходных) файлов и резервных копий, вы можете использовать утилиту par2, которая хранит дополнительную дополнительную информацию, которая позволяет восстанавливать даже поврежденные файлы. Вы можете использовать версию утилиты par2 для Windows под названием MultiPar

Вы также можете использовать PureSync для резервного копирования и установить
Compare methodsв настройках By contents (compare binary).
Каждый раз, когда вы используете PureSync, он будет сравнивать исходные и целевые каталоги по содержимому (что на самом деле будет довольно медленным, поскольку ПК потребуется перечитать все файлы, чтобы иметь возможность проверить целостность файла).

Вы можете создать архивы par2 в исходном месте и синхронизировать его с PureSync на резервный диск.

0
Charles Burge

Ответ EEAA хороший, но я бы порекомендовал хеши MD5, потому что это было бы быстрее, и в этом случае вас не заботит безопасность.

Вот команда Powershell, которую вы можете использовать для генерации списка хэшей:

Get-FileHash -Algorithm MD5 -Path (Get-ChildItem "C:\path\to\files\*.*" -Recurse) | Export-CSV C:\Temp\Hashlist.csv 

Запустите его как в исходном каталоге, так и в каталоге резервного копирования, а затем сравните списки. Обратите внимание, что командлет Get-FileHash доступен только в Powershell 4.0 и выше.

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