Wie kann man die Datenintegrität für den Heimgebrauch unter Windows überprüfen?

709

Ich mache derzeit Sicherungskopien meiner Familienbilder von meiner Festplatte auf eine externe Festplatte und archiviere diese alle paar Monate an einem sicheren Ort. Wie kann ich garantieren, dass die Dateien auf meinem externen Laufwerk und / oder meiner Festplatte nicht bei jeder Sicherung beschädigt werden (ohne zu überprüfen, ob die Bilder immer noch in Ordnung sind)?

0

4 Antworten auf die Frage

0
EEAA

Schreiben Sie ein Skript, um einen sha2-Hash über alle Dateien an jedem Speicherort auszuführen, und vergleichen Sie die Ausgabe. Der SHA2 jeder Datei sollte übereinstimmen. Wenn nicht, haben Sie kein gutes Backup.

0
Darren

Sie können eine rsync-Implementierung verwenden, um Verzeichnisse zu synchronisieren, jedoch mit --dry-rungesetztem Flag. Dadurch werden alle Dateien markiert, die nicht übereinstimmen und synchronisiert werden müssen.

0
Alex

Wie bereits erwähnt, können Sie ein Hash-Dienstprogramm verwenden, um die Integrität der Datei zu überprüfen, die Dateien selbst werden jedoch nicht gespeichert / wiederhergestellt.
Sie können für Hashing verwenden: DirHash, Hash-it, QuickHash oder sogar die Lösung PsFCIV von Microsoft

Wenn Sie nicht nur die Integrität prüfen möchten, sondern auch die Möglichkeit haben, Daten wiederherzustellen, falls (ursprüngliche) Quelldateien und Backups beschädigt werden, können Sie das Dienstprogramm par2 verwenden, das zusätzliche zusätzliche Informationen enthält, mit denen Sie sogar beschädigte Dateien wiederherstellen können. Sie können die Windows-Version des Dienstprogramms par2 verwenden, das MultiPar aufgerufen hat

Sie können PureSync auch zu Sicherungszwecken verwenden und
Compare methodsin den Einstellungen auf setzen By contents (compare binary).
Bei jeder Verwendung von PureSync werden Quell- und Zielverzeichnisse nach Inhalt verglichen (was ziemlich langsam ist, da der PC alle Dateien erneut lesen muss, um die Integrität der Datei testen zu können).

Sie können par2- Archive am ursprünglichen Ziel erstellen und mit PureSync mit dem Sicherungslaufwerk synchronisieren .

0
Charles Burge

Die Antwort von EEAA ist gut, aber ich würde MD5-Hashes empfehlen, da dies schneller wäre und Sie sich in diesem Fall nicht für die Sicherheit interessieren.

Hier ist ein Powershell-Befehl, mit dem Sie eine Liste von Hashwerten generieren können:

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

Führen Sie das in Ihrem Quellverzeichnis und Ihrem Sicherungsverzeichnis aus, und vergleichen Sie dann die Listen. Beachten Sie, dass das Cmdlet Get-FileHash nur in Powershell 4.0 und höher verfügbar ist.