Solo usando dd
y md5sum
/ sha1sum
es suficiente, pero como se dijo anteriormente, tenga cuidado, su dispositivo no es del mismo tamaño que su archivo, por lo que las sumas serán diferentes.
Aquí cómo puedes hacerlo
Primero necesitará saber el tamaño del archivo:
$ stat -c '%s' debian-live-8.2.0-amd64-lxde-desktop.iso
1003487232
Luego, para ser genial con sus llamadas al sistema, es mejor que obtenga esto como un múltiplo de un buen poder de dos como 4096
, la multiplicación de los dos DEBE producir exactamente el tamaño del archivo, de otras maneras, comprobará muy pocos o demasiados bytes, produciendo una suma de verificación incorrecta.
$ bc
bc 1.06.95
scale = 9
1003487232 / 4096
244992.000000000
Estoy feliz, 4096 × 244992 = 1003487232
así que 4096 es bueno para mí (y probablemente lo sea para usted), así que puedo usar un tamaño de bloque de 4096
(típico) y un conteo de bloques 244992
.
No olvides escribir el archivo en la llave USB ...
$ dd if=debian-live-8.2.0-amd64-lxde-desktop.iso of=/dev/sd? && sync
Y sepa, utilizando el tamaño de bloque conocido y el recuento de bloques, puede leer el número exacto de bytes de la clave y verificarlos:
$ dd if=/dev/sdb bs=4096 count=244992 | sha1sum
b0dbe4ca8f526d1e43555459c538607d4a987184
(Sí, md5sum
es mucho más rápido que sha1sum
eso, pero claramente no es tu cuello de botella aquí, el cuello de botella es la conexión USB, gracias por notarlo).
O, en resumen:
dd if=/dev/sdb bs=4096 count=$(($(stat -c '%s' the.iso) / 4096)) | sha1sum