Nerdwallers Antwort über die Verwendung tee
Das gleichzeitige Übertragen und Berechnen einer Prüfsumme ist ein guter Ansatz, wenn Sie vor allem über Korruption im Netzwerk besorgt sind. Es schützt Sie jedoch nicht vor Beschädigung auf dem Weg zur Festplatte usw., da es die Prüfsumme verwendet, bevor sie auf die Festplatte trifft.
Aber ich möchte noch etwas hinzufügen:
1 TiB / 40 Minuten ≈ 437 MiB / Sek 1 .
Das geht eigentlich ziemlich schnell. Denken Sie daran, es sei denn, Sie haben eine Menge RAM, das muss aus dem Speicher zurückkommen. Das erste, was Sie überprüfen müssen, ist zuschauen iostat -kx 10
wie Sie Ihre Prüfsummen ausführen; Insbesondere möchten Sie auf die %util
Säule. Wenn Sie die Datenträger fixieren (nahezu 100%), ist die Antwort der Kauf eines schnelleren Speichers.
Ansonsten können Sie, wie in anderen Postern erwähnt, andere Prüfsummenalgorithmen ausprobieren. MD4, MD5 und SHA-1 sind alle als kryptografische Hashes konzipiert (obwohl keines mehr für diesen Zweck verwendet werden sollte; alle gelten als zu schwach). Was die Geschwindigkeit angeht, kann man sie mit der vergleichen openssl speed md4 md5 sha1 sha256
. Ich habe in SHA256 geworfen, um mindestens einen noch stark genug Hash zu haben.
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
md4 61716.74k 195224.79k 455472.73k 695089.49k 820035.58k
md5 46317.99k 140508.39k 320853.42k 473215.66k 539563.35k
sha1 43397.21k 126598.91k 283775.15k 392279.04k 473153.54k
sha256 33677.99k 75638.81k 128904.87k 155874.91k 167774.89k
Davon können Sie sehen, dass MD4 am schnellsten und SHA256 am langsamsten ist. Dieses Ergebnis ist zumindest für PC-ähnliche Hardware typisch.
Wenn Sie noch mehr Leistung wollen (auf Kosten des Seins) trivial Um Korruption zu manipulieren und auch weniger zu erkennen, möchten Sie sich einen CRC oder Adler-Hash ansehen. Von den beiden ist Adler normalerweise schneller, aber schwächer. Leider sind mir keine wirklich schnellen Befehlszeilenimplementierungen bekannt. Die Programme auf meinem System sind alle langsamer als OpenSSLs md4.
Also ist Ihre beste Wette in Bezug auf die Geschwindigkeit openssl md4 -r
(das -r
sieht aus wie md5sum output).
Wenn Sie bereit sind, Kompilierung und / oder Minimalprogrammierung durchzuführen, lesen Sie Mark Adlers Code über Stack Overflow und auch xxhash . Wenn Sie über SSE 4.2 verfügen, können Sie die Geschwindigkeit des Hardware-CRC-Befehls nicht übertreffen.
1 1 TiB = 1024 Bytes; 1 MiB = 1024² Bytes. Kommt zu ~ 417 MB / Sek. Mit einer Leistung von 1000 Einheiten.