Schutz der Daten vor Bit-Rot

Schutz der Daten vor Bit-Rot

Mir ist klar geworden, dass ich alle meine Fotos vor Bit-Rot (zufällig auftretende Dateibeschädigung aufgrund von Fehlern auf der Festplatte oder bei der Netzwerkübertragung) schützen muss.

Ich habe vor Kurzem par2 entdeckt, ein scheinbar großartiges Programm zum Erstellen von Redundanzdateien und zum Erkennen und Reparieren von Dateibeschädigungen.

Ich glaube nicht, dass Journaling-Dateisysteme hier die richtige Lösung sind, da ich möchte, dass der Schutz den Dateien in meinem Backup und bei der Migration auf neue Laptops erhalten bleibt.

Ich glaube also, dass ich ein Skript brauche, das als Cronjob ausgeführt werden kann, vielleicht einmal pro Stunde. Es würde alle Dateien durchsuchen, die geschützt werden müssen, und die Redundanzdateien aktualisieren, wenn Dateien hinzugefügt oder geändert werden (Datei hat Bearbeitungszeitstempel, der neuer ist als das Redundanzarchiv), und es würde Dateien reparieren, wenn eine Datei beschädigt wurde (Datei wurde geändert, aber Bearbeitungszeitstempel wurde nicht aktualisiert).

Gibt es ein Skript oder Programm, das dies tun würde? Oder gibt es Programme, die das Problem auf andere Weise lösen? Oder sollte ich einfach selbst ein solches Skript schreiben (was ich lieber nicht tun würde, ich möchte etwas Robustes, das von vielen Benutzern getestet wurde)?

Antwort1

Die kanonische Lösung besteht darin, ein Dateisystem zu verwenden, das Prüfsummen unterstützt, und regelmäßige Sicherungen durchzuführen.

Darüber hinaus können Sie auch ein redundantes Speicherschema (RAID) – auf Dateisystemebene – verwenden, um zeitaufwändige Wiederherstellungen aus dem Backup nach Möglichkeit zu vermeiden.

Beispiele für solche Dateisysteme sindZFSoderBtrfs.

Die Prüfsummenfunktion solcher Dateisysteme wird mithilfe einer kryptografischen Hash-Funktion implementiert. Dadurch werden Bitfehler weiter unten im Speicherstapel mit sehr hoher Wahrscheinlichkeit erkannt. Daher ist ihre Fähigkeit zur Erkennung von Beschädigungen auf dem gleichen oder sogar noch höher als bei Tools wie par2.

Diese Dateisysteme enthalten auch redundante Speicherfunktionen – ähnlich wie RAID-Level. Der Unterschied zu einem klassischen RAID-Ansatz mit mehreren Schichten besteht darin, dass das Dateisystem im Falle einer erkannten Beschädigung das „richtige“ Bein auswählen kann, d. h. die Seite des RAID-Spiegels, die den Block mit der richtigen Prüfsumme zurückgibt.

Antwort2

Dies ist eine ältere Frage, aber im Jahr 2019 immer noch relevant.

Ja, Paritätsdateien sind eine praktikable Lösung gegen Bit-Rot

Zwar bringt die Paritätsprüfung auf Nicht-Dateisystemebene auch Nachteile mit sich, sie bietet jedoch auch einen großen Vorteil:

Portabilität.

Die raffinierteste dateisystembasierte Fehlerprüfung der Welt könnte Ihre Daten theoretisch für immer vor Bitrot schützen, aber der Schutz ist an dieses Dateisystem gebunden. Sobald Dateien das Dateisystem verlassen, sind sie ungeschützt.

"zu schwer"vonbrappsist lizenziert unterCC BY-NC 2.0 (Er sollte wirklich auf ZFS und ein Dach umsteigen, bevor er die Daten eingibt)

Bilder mit Paritätsdateien daneben können auf USB-Laufwerke verschoben, über verlustfreie Verbindungen übertragen, komprimiert, einzeln auf anderen Medien gesichert und Hunderte anderer Dinge getan werden, die mir spontan einfallen.

Sie können auch Änderungen verhindern, die auf fehlerhaften Programmen beruhen (z. B. Metadatenanalysatoren, die versehentlich falsche Metadaten schreiben).

PAR2 ist eine praktikable Wahl für Paritätsdateien

Insbesondere PAR2-Dateien können plattformübergreifend verwendet werden und ihre größten Nachteile stellen beim Schutz großer Fotos kein wirkliches Problem dar (PAR2 unterstützt keine Unterordner und verarbeitet Dateien < 1 KB nicht effizient).

PAR-Dateien sind jedoch keine vollständige Backup-Lösung.

Sie müssen dennoch Teil einer 3-Kopien-Backup-Strategie sein, um „kugelsicher“ zu sein, insbesondere da es bei PAR-Dateien keinen Änderungsverlauf gibt: Wenn eine Änderung als gültig erkannt und die Paritätsdateien neu erstellt werden, gibt es kein Zurück, ohne auf ein separates Backup zurückzugreifen (eine Offsite-Backup-Lösung mit integriertem Änderungsverlauf wäre hier die bessere Wahl).

Nächste Schritte

Die Antwort auf die ursprüngliche Frage „Gibt es ein Skript oder Programm, das [automatisch Paritätsdateien erstellt und verwaltet]?“ lautet im Jahr 2019 immer noch „Nein“, aber selbst ein Skript zu erstellen oder erstellen zu lassen, ist ziemlich trivial. Wenn Sie diesen Weg gehen, ist der beste Rat, den ich Ihnen geben kann: Erstellen Sie eine Testumgebung mit jedem denkbaren Grenzfall und führen Sie jedes Skript durch alle Tests, bevor Sie ihm vertrauen.

Und wenn jemand dies liesttutGehen Sie diesen Weg und ziehen Sie in Erwägung, es zum Nutzen aller als Open Source bereitzustellen.

Bearbeiteter Nachtrag: Die für PAR-Dateien verwendete Technologie isthttps://en.wikipedia.org/wiki/Reed–Solomon_error_correction, und während die PAR-Entwicklung ins Stocken geraten ist, gibt es Dutzende, wenn nicht Hunderte von Projekten, die Reed-Solomon für die Datenintegrität/-reparatur auf Dateiebene verwenden.

Antwort3

Ich habe ein einfaches Tool zum Erkennen von Bitrot geschrieben, genanntchkbit.

Es erstellt einen Hash, der Ihren Daten unabhängig vom Dateisystem folgt. So chkbitkönnen Sie die Integrität Ihrer Daten auf Ihrem Hauptsystem, auf dem Sicherungsmedium und nach einer Wiederherstellung überprüfen.

Mit chkbit können Sie die Daten nicht reparieren. Sie benötigen dennoch ein oder mehrere Backups.

verwandte Informationen