Se a sua imagem for menor do que a unidade USB, então você precisa ter certeza de que você leu apenas o tamanho dos dados da unidade, caso contrário, todo o restante da unidade será adicionado ao sha256 e criará um resultado diferente. / p>
por exemplo,
$ ls -l tst.iso
-rw-r--r-- 1 root root Jul 1 14:58 tst.iso
$ /usr/bin/sha256sum tst.iso
49bc20df15e412a64472421e13fe86ff1c5165e18b2afccf160d4dc19fe68a14 tst.iso
$ dd if=tst.iso of=/dev/sdg bs=1M
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 200.066 s, 5.4 MB/s
Quando lemos isso de volta, precisamos ter certeza de que apenas lemos os 1.073.741.824 bytes que escrevemos. Neste caso eu sei que são exatamente 1024 blocos de 1M cada, então eu posso especificar um bs=1M count=1024
.
$ dd if=/dev/sdg bs=1M count=1024 | sha256sum
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 37.8798 s, 28.3 MB/s
49bc20df15e412a64472421e13fe86ff1c5165e18b2afccf160d4dc19fe68a14 -
Sem o total de bytes correspondentes, o sha256 seria diferente.