GNU/Linux >> Tutoriales Linux >  >> Linux

¿Calcular Md5sum de un Cd/dvd?

Tengo un archivo ISO, que grabé en un CD. Ahora, ¿cómo puedo verificar si el CD se creó correctamente? Me gustaría un comando que calcule la suma hash que puedo usar para verificar con la suma hash que calculo en el archivo ISO. Idealmente, el comando debería:

  • Funciona independientemente del archivo ISO:es decir, no quiero mantener una lista de sumas hash para cada archivo en el disco, ni recordar la cantidad de bloques
  • Sea relativamente breve:un comando de una línea es excelente, una cadena de comandos de dos líneas está bien, un script que abarca una página no lo es
  • Ser bastante eficiente:por ejemplo, dd el disco vuelva a un archivo y luego ejecute md5sum en el archivo es inaceptable

Si no hay una respuesta que no pueda satisfacer a todos, también apreciaré la coincidencia más cercana. Aún mejor si me puedes decir por qué no es tan sencillo.

Respuesta aceptada:

El problema básico es que queremos tomar el md5sum de exactamente la misma información que estaba originalmente en el ISO. Cuando escribe la ISO en un CD, es probable que haya un espacio en blanco al final del disco, lo que inevitablemente cambia el md5sum. Por lo tanto, el camino más corto:

md5sum /dev/cdrom

no funciona . Lo que funciona (y es común en la documentación en línea) es solo leer la cantidad exacta de bytes del dispositivo y luego hacer md5sum . Si conoce la cantidad de bytes, puede hacer algo como:

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

donde 'xxxxx' es el tamaño de la iso en bytes.

Si no conoce la cantidad de bytes, pero aún tiene la iso en su disco, puede obtenerlos usando ls haciendo algo como lo siguiente (tomado de aquí):

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

Hay muchas otras construcciones de una línea que deberían funcionar. Note que en cada caso estamos usando dd para leer los bytes del disco, pero no los canalizamos a un archivo, sino que los entregamos directamente a md5sum.

Relacionado:¿Cómo calcular el tiempo de carga y descarga de la batería?

Se pueden realizar posibles mejoras de velocidad haciendo algunos cálculos para usar un tamaño de bloque más grande (el bs= en el dd comando).


Linux
  1. ¿Cómo calcula el comando stat los bloques de un archivo?

  2. Compara sumas md5 en script bash

  3. desactivar el botón cd/dvd en la computadora portátil linux (ubuntu)

  4. cp -L frente a cp -H

  5. ¿Cómo puedo desactivar el botón de mi unidad de CD/DVD?

Cómo usar el comando md5sum en Linux

Cómo montar CD/DVD ROM en CentOS / RHEL Linux

Linux:Cómo grabar un CD/DVD a través de la línea de comandos

Editor VIM

¿Qué software de grabación de CD/DVD debo usar?

K3b Nero como software de grabación de CD/DVD en Ubuntu Linux