GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Md5-Summe einer CD/DVD berechnen?

Ich habe eine ISO-Datei, die ich auf eine CD gebrannt habe. Wie kann ich nun überprüfen, ob die CD korrekt erstellt wurde? Ich hätte gerne einen Befehl, der die Hash-Summe berechnet, mit der ich die Hash-Summe überprüfen kann, die ich in der ISO-Datei berechnet habe. Idealerweise sollte der Befehl:

  • Arbeite unabhängig von der ISO-Datei:Das heißt, ich möchte keine Liste mit Hash-Summen für jede Datei auf der Disc führen oder mich an die Anzahl der Blöcke erinnern
  • Sei relativ kurz:Ein einzeiliger Befehl ist großartig, eine zweizeilige Befehlskette ist in Ordnung, ein Skript, das sich über eine Seite erstreckt, nicht
  • Sei ziemlich effizient:zum Beispiel dd die Disc zurück in eine Datei und führen Sie dann md5sum aus in der Datei ist nicht akzeptabel

Wenn es keine Antwort gibt, die nicht alle befriedigen kann, werde ich auch die nächste Übereinstimmung zu schätzen wissen. Noch besser, wenn Sie mir sagen können, warum es nicht so einfach ist.

Akzeptierte Antwort:

Das grundlegende Problem ist, dass wir die md5-Summe der exakt gleichen Informationen nehmen wollen, die ursprünglich auf der ISO waren. Wenn Sie die ISO auf eine CD schreiben, befindet sich am Ende der Platte wahrscheinlich ein leerer Bereich, der die md5-Summe unweigerlich ändert. Also der allerkürzeste Weg:

md5sum /dev/cdrom

funktioniert nicht . Was funktioniert (und in der Online-Dokumentation üblich ist), liest nur die genaue Anzahl von Bytes vom Gerät und macht dann die md5sum . Wenn Sie die Anzahl der Bytes kennen, können Sie Folgendes tun:

dd if=/dev/cdrom bs=1 count=xxxxxxxx | md5sum

wobei „xxxxx“ die Größe der ISO in Byte ist.

Wenn Sie die Anzahl der Bytes nicht sofort kennen, aber die ISO-Datei noch auf Ihrer Festplatte haben, können Sie sie mit ls abrufen, indem Sie Folgendes tun (von hier entnommen):

dd if=/dev/cdrom | head -c `stat --format=%s file.iso` | md5sum

Es gibt viele andere einzeilige Konstruktionen, die funktionieren sollten. Beachten Sie, dass wir in jedem Fall dd verwenden um die Bytes von der Festplatte zu lesen, aber wir leiten diese nicht in eine Datei, sondern übergeben sie direkt an md5sum.

Verwandte:Wie berechnet man die Zeit zum Laden und Entladen der Batterie?

Mögliche Geschwindigkeitsverbesserungen können vorgenommen werden, indem einige Berechnungen durchgeführt werden, um eine größere Blockgröße zu verwenden (die bs= im dd Befehl).


Linux
  1. Reihenfolge der Umleitungen?

  2. Linux – Alles ist eine Datei?

  3. Teil einer Datei sortieren?

  4. Ubuntu – Ausführen eines Befehls, wenn eine CD/DVD/BD eingelegt ist?

  5. cp-L vs. cp-H

So verwenden Sie den md5sum-Befehl unter Linux

So mounten Sie ein CD/DVD-ROM unter CentOS / RHEL Linux

Linux:So brennen Sie eine CD/DVD über die Befehlszeile

VIM-Editor

Welche Software zum Brennen von CDs/DVDs sollte ich verwenden?

K3b Nero wie CD/DVD-Brennsoftware in Ubuntu Linux