Suche ein Programm oder Strategie um eine MD5-Datenbank aufzubauen

Snoopy69

Captain
Registriert
März 2004
Beiträge
3.823
Vielleicht kennt das der Eine oder Andere, dass sich beim Kopieren/Verschieben oder beim Altern von Dateien CRC-Fehler einschleichen können. Wenn ich meinen jetzigen Datenbestand mit MD5 (über Total Commander) verifiziere hab ich nach zb einem halben Jahr zig nicht-verifizierte Dateien. Daher suche ich ein Programm oder eine Strategie, dass die Dateien seit der letzten Verifizierung erkennt, verifiziert und in die schon bestehende MD5-Datenbank (mit Total Commander erstellt) aufnimmt. Wäre super, wenn es sowas gäbe.

Wenn nicht, habt ihr eine Idee für eine sichere Strategie, dass ich die seit der letzten Verifizierung hinzugekommenen Dateien filtern und separat verifizieren kann?


btw:
Ich benutze zwar seit Jahren MD5 zum Verifizieren, aber ich hatte trotz erfolgreicher Verifizierung ein paar CRC-Fehler. Daher tippe ich auf gekippte Bits in der Datei. Oder kann es sein, dass mir eine erfolgreiche Verifizierung angezeigt wird, aber dennoch falsch geschrieben wird? (zb, wenn man keinen ECC-RAM etc benutzt)
 
Am einfachsten geht das mit einem Dateisystem das die Daten direkt mit Prüfsummen sichert. In der Linux Welt gibts da diverse, unter Windows kann das ReFS.
 
Es ist extrem unwahrscheinlich, dass eine kaputte Datei den gleichen md5 Hash hat wie die korrekte, da muss man schon absichtlich manipulieren. Da ist dann auch ecc Speicher egal. Der andere Fall, der dich aber nicht interessieren dürfte, also eine korrekte Datei hat einen falschen md5 Code, der kann natürlich durch bit flips im Speicher ausgelöst werden.

Um rausgekriegen ob deine total Commander md5 db kaputt ist, musst die db hashen nach jedem Update (wenn das nicht sowieso schon passiert).

Grundsätzlich ist dein Weg schon richtig. an anderen Tools kenne ich noch ein altes Microsoft tool. https://support.microsoft.com/de-de/kb/841290
 
Ok, danke...

Wie mache ich das unter Windows (mom. noch WIN7 x64)?

Hm, die Kritik von ReFS gefällt mir nicht...

https://de.wikipedia.org/wiki/ReFS

Microsoft betrachtet die Merkmale der Dateisysteme NTFS und ReFS und deren Erprobungsstrategie als Wettbewerbsmerkmal und legt diese nicht offen.[3]

Eine vollständige Spezifikation des Dateisystems ist bisher nicht öffentlich zugänglich.
Es gibt kein Modell mit einer Metrik für Vergleiche von Leistung und Sicherheit.
Eine vergleichende Bewertung des Dateisystems hinsichtlich Sicherheit und Datendurchsatz ist nicht bekannt.[4]
Ein Bezug zu den Redundanzverfahren RAID ist nicht bekannt.[5][6]


edit:
Der andere Fall, der dich aber nicht interessieren dürfte, also eine korrekte Datei hat einen falschen md5 Code, der kann natürlich durch bit flips im Speicher ausgelöst werden.
Nee, das interessiert mich schon...

Und ist die Fehlerkorrektur eines OS vergleichbar mit der Korrektur eines RAID6? (hab sowas auf einem ARC-1261ML mit ECC-RAM laufen - das Mainboard hat allerdings keinen ECC-RAM)


Welchen Weg meinst du - das mit Total Commander?
Aber wie filtere ich hinzugekommene Dateien seit der letzten Verifizierung heraus?
Total Commander kann zwar nach Alter der Dateien filtern, aber nicht, wenn ich eine alte Datei von einem anderen Medium aufs System kopiere. Wisst ihr, was ich meine?
 
Zuletzt bearbeitet:
Die total Commander db zu hashen: du lädst die md5sum exe runter (zB hier http://www.pc-tools.net/win32/md5sums/) und schreibst die Ausgabe in eine datei und prüfst dann ggf manuell oder baust die einen batch Job.
Ansonsten geht es mit dem ms tool einfach, siehe Link oben, das Tool kann auch gleichzeitig md5 und sha1 berechnen, dami sinkt die Wahrscheinlichkeit für nicht erkannte aber fehlerhafte Dateien noch mehr.

​Nur spezifisch designte Dateisysteme, zB zfs, btrfs auf Linux und refs auf Windows können crc Fehler in Dateien erkennen. Ohne ecc Ram sind die aber sicherlich immer schlechter in der Erkennung (mögliche false positives, also korrekte Datei als kaputt erkannt) als der Controller mit ecc Ram.
Grundsätzlich ist ein Server ohne ecc Ram immer fahrlässig ;)
Ergänzung ()

Snoopy69 schrieb:
Welchen Weg meinst du - das mit Total Commander?
Aber wie filtere ich hinzugekommene Dateien seit der letzten Verifizierung heraus?
Total Commander kann zwar nach Alter der Dateien filtern, aber nicht, wenn ich eine alte Datei von einem anderen Medium aufs System kopiere. Wisst ihr, was ich meine?

Jo ich verstehe was du meinst, aber mit fällt da kein guter Weg ein. Im Normallfall geht man davon aus, dass das Quellmedium korrekt ist und der Kopiervorgang korrekt ist und dann die Datei auf dem Zielmedium auch korrekt ist.
Ich bin mir ehrlich gesagt nichtmal sicher ob die Dateisysteme die CRC integriert haben, sowas automatisch können (also wenn Quelle und Ziel ein solches FS haben, ob er dann automatisch beim Kopieren das prüft).
 
Zuletzt bearbeitet von einem Moderator:
Ist ReFS das einzige FS, dass WIN7 erkennt? Und was ist von den Kritiken von ReFS zu halten - etwa, weil es "closed" ist?

Und machen diese korrigierenden FS´ bei einer Verschlüsselung überhaupt Sinn?
Es soll mit TrueCrypt bzw. mit VeraCrypt verschlüsselt werden.
 
Zuletzt bearbeitet:
Was hilft dir eine Checksumme wenn die Datei mal beschädigt ist und du weißt dass es so ist.
Reparieren kannst du die Datei dann sowieso nicht mehr.

Darum ist ein Filesystem was das automatisch macht immer besser. Ob nun RAID oder ReFS, ZFS usw.

Hab mir schon mal überlegt rein zum sicheren mittels Batch und WINRAR jede Datei oder Ordner als eigenständiges Archiv zu sichern.
WinRAR bietet auch einen Zusatzspeicher für Reparatur an falls mal ein Bit kippt.

Gute Backup Programme sollten Fehler auch automatisch wieder rekonstruieren können.

Und bei vielen Dateien möchte ich mal die DB Größe sehen. Und was wenn die DB selbst mal beschädigt wäre?
 
Zuletzt bearbeitet:
Klar, bringt es nichts mehr, wenn die Datei ein gekipptes Bit hat oder ganz defekt ist.

Das mit WinRar kenne ich. Die Handhabung der Dateien wäre dann aber umständlicher. Bei vielen Dateien wären Archive aber nicht schlecht und eine Alternative, wenn man das FS nicht wechseln will.

Welche Backup-Programme bieten denn eine integrierte Fehlerkorrektur? Davon höre ich zum ersten Mal :confused_alt:
Habe jahrelang "Acronis True Image" benutzt, hab noch nebenbei "Macrium Reflect - Server Plus Edition" ausprobiert.

Es sind mehrere MD5-DBs von 50-80MB gross. Für meine Verhältnisse schon richtige Brocken. Klar, bei so vielen Dateien.
 
Welche Backupprogramme das können müsste man schauen.
Zumindest konnte das schon PCToolsBackup ab ca. 1986 herum.

Auch sollte man zwischen OS und reinen Daten trennen.
Denn Windows kann beispielsweise ReFS noch nicht für das Systemlaufwerk verwenden soweit ich noch richtig informiert bin.
 
Zuletzt bearbeitet:
Ob PCToolsBackup auf WIN10 läuft? :D

Würde mich interessieren, welche Backup-Programme das können.
In den Beschreibungen finde ich nichts oder ich habs übersehen.
 
keine Ahnung welches Programm genau das so macht
Windows bietet ja selbst auch etwas an bei einigen Versionen.

eventuell findest du hier noch etwas
http://www.heise.de/newsticker/bilderstrecke/bilderstrecke_3169116.html
oder
http://www.heise.de/download/search?terms=backup#?os=WINDOWS

oder schau mal bei Macrium etc in den Optionen was du da bei Backups einstellen kannst

p.s. Reine Daten sollte man sowieso irgendwie getrennt halten
Meist hast du ja auch nicht auf alle Ordner / Dateien Zugriff auf C:
 
Zuletzt bearbeitet:
Snoopy69 schrieb:
das Mainboard hat allerdings keinen ECC-RAM)
Dann ahne ich woher die Fehler kommen denn ECC-RAM und ein passendes Board + CPU sind schon mal die Grundlage wenn man mehr Sicherheit vor Datenkorruption haben möchte, als die normale Consumer HW eben bietet.
 
D.h. ein FS, wie zb ZFS, btrfs und ReFS + RAID6-Controller mit ECC-RAM reicht nicht aus?
Wenn zb Laufwerk d:\ und e:\ mit ReFS formatiert wurde und ich eine Datei auf d:\ hab, dann ist diese ja dort verifiziert.
Und wenn ich die Datei nun auf e:\ kopiere, erkennt das System nicht, dass die Quersumme der Datei unterschiedlich ist, wenn es zur Dateikorruption kommt? Dann wären diese Filesysteme ja sinnfrei... :confused_alt:
 
Kommt wahrscheinlich auf die Kopierroutine an.
Einige Tools wie zB. Ultracopier/Supercopier usw. haben PrüfsummenChecks nach dem Kopiervorgang eingebaut.
Die Berechnungen laufen denk ich mal über CPU+RAM, da wäre ECC schon ein Vorteil.

Bei richtigen H/W-ECC-Controllern wird wahrscheinlich schon die Übertragung selbst auf Fehler gerpüft und ggf. automatisch korrigiert. Aber da weiß Holt sicher mehr.

Naja und was das OS noch so nebenbei macht spielt sicher auch ne Rolle.
Gab schon unter DOS den Eintrag VERIFY ON was Datenoperationen langsamer aber sicherer machte.
Prüfte glaub ich auf schlechte Sektoren.
 
Zuletzt bearbeitet:
Nein, denn auch wenn der SAS RAID Controller ECC RAM hat, so gehen die Daten von dort ja in den Hauptspeicher des Rechners und sind dann dort total ungeschützt, wenn der kein ECC RAM (die passende Plattform mit ECC RAM Unterstützung gehört immer dazu, brauche ich eigentlich nicht extra zu erwähnen!) hat. Wie wichtig ECC RAM ist, siehst Du ja schon daran, dass die ganze Profi RAID Controller es auch für die paar MB Cache haben, stell Dir vor wie viel größer das Risiko bei den vielen GB RAM im Rechner ist.

Übrigens haben bei Intel selbst die besseren Netzwerkchips Puffer mit ECC RAM:

intel-ethernet-controller-ecc-png.531765
 
Es gibt Advanced ECC Technologie bis zum Mirror, wobei die Daten als doppelt gehalten werden, nach oben geht es also weiter, aber wenn man gar nichts an ECC RAM hat und auf die einfach ECC RAM Lösung wechselt die Singlebit Fehler korrigieren kann wie sie der S. 1151 mit den C23x Chipsätze bietet, macht man schon einen gewaltigen Sprung. Doppeltbitfehler sind ja nun einmal schon extrem viel seltener als Singlebitfehler und irgendwo müssen Aufwand und Ergebnis ja auch noch in einem vertretbaren Verhältnis stehen. Wenn man maximal Sicherheit vor Bitfehlern irgrendwo im Rechner möchte, landet man am Ende bei den Mainframes, die bieten die höchste Sicherheit und sind daher bei Banken und Versicherung wo ein Fehler wirklich existenzbedrohnend werden kann, auch immer noch immer nicht zu ersetzen, obwohl deren Ende seit Jahrzehnten ausgerufen wird.
 
Zurück
Oben