GNU/Linux >> Tutoriels Linux >  >> Linux

Calculer la somme Md5 d'un CD/DVD ?

J'ai un fichier ISO, que j'ai gravé sur un CD. Maintenant, comment puis-je vérifier si le CD est correctement créé ? Je voudrais une commande qui calcule la somme de hachage que je peux utiliser pour vérifier avec la somme de hachage que je calcule sur le fichier ISO. Idéalement, la commande devrait :

  • Travailler quel que soit le fichier ISO :c'est-à-dire que je ne veux pas conserver une liste de sommes de hachage pour chaque fichier du disque, ni mémoriser le nombre de blocs, quel qu'il soit
  • Soyez relativement court :une commande d'une ligne est idéale, une chaîne de commandes de deux lignes est acceptable, un script qui s'étend sur une page ne l'est pas
  • Soyez assez efficace :par exemple, dd le disque dans un fichier puis exécutez md5sum sur le fichier est inacceptable

S'il n'y a pas de réponse qui ne puisse pas satisfaire tout le monde, j'apprécierai également la correspondance la plus proche. Encore mieux si vous pouvez me dire pourquoi ce n'est pas si simple.

Réponse acceptée :

Le problème de base est que nous voulons prendre la somme md5 de la même information exacte qui était sur l'ISO à l'origine. Lorsque vous écrivez l'ISO sur un CD, il y a probablement un espace vide à la fin du disque, ce qui modifie inévitablement la somme MD5. Ainsi, le chemin le plus court :

md5sum /dev/cdrom

ne fonctionne pas . Ce qui fonctionne (et est courant dans la documentation en ligne) est uniquement de lire le nombre exact d'octets de l'appareil, puis de faire le md5sum . Si vous connaissez le nombre d'octets, vous pouvez faire quelque chose comme :

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

où 'xxxxx' est la taille de l'iso en octets.

Si vous ne connaissez pas le nombre d'octets disponibles, mais que vous avez toujours l'iso sur votre disque, vous pouvez les obtenir à l'aide de ls en procédant comme suit (tiré d'ici) :

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

Il existe de nombreuses autres constructions à une ligne qui devraient fonctionner. Notez que dans chaque cas, nous utilisons dd pour lire les octets du disque, mais nous ne les dirigeons pas vers un fichier, nous les transmettons directement à md5sum.

Connexe :Comment calculer le temps de charge et de décharge de la batterie ?

Des améliorations de vitesse possibles peuvent être apportées en faisant quelques calculs pour utiliser une plus grande taille de bloc (le bs= dans le dd commande).


Linux
  1. Comment trouver le système de fichiers d'un CD/DVD pour le monter automatiquement :[Linux]

  2. Ordre des redirections ?

  3. Linux - Tout est un fichier ?

  4. Ubuntu - Exécution d'une commande lorsqu'un CD/dvd/bd est inséré ?

  5. Comment calculer la somme de contrôle CRC sous Linux à l'aide de la commande Cksum

Comment utiliser la commande md5sum sous Linux

Comment monter un CD/DVD ROM sur CentOS / RHEL Linux

Linux :comment graver un CD/DVD via la ligne de commande

Éditeur VIM

Quel logiciel de gravure de CD/DVD dois-je utiliser ?

K3b Nero comme logiciel de gravure de CD/DVD dans Ubuntu Linux