作成した画像と一致するようにddを使用して画像を再読み込みするにはどうすればよいですか?

作成した画像と一致するようにddを使用して画像を再読み込みするにはどうすればよいですか?

このツールを使用すると、8 GBのSDカードに書き込んでいる約1 GBの画像がありますdd。もう一度読んで、そのハッシュを元のハッシュと比較して、損傷なしで作成されたことを確認したいと思います。

dd明らかに、結果の画像のサイズで再度読み取ると、私のSDカードのサイズと一致するので、ハッシュをチェックすることは役に立ちません。

私は何とか出力を解釈する必要があると思います。書く正しく読み取るには、設定skip/パラメータを呼び出してください。count

イメージの作成に使用するコマンドは次のとおりです。

> sudo dd if=my.img of=/dev/sdc bs=1M 
8+50581 records in
8+50581 records out
3947888640 bytes (3.9 GB) copied, 108.701 s, 36.3 MB/s

画像を読み取るために使用するコマンドは次のとおりです。

> sudo dd if=/dev/sdc of=same_as_my.img
15523840+0 records in
15523840+0 records out
7948206080 bytes (7.9 GB) copied, 285.175 s, 27.9 MB/s

ベストアンサー1

\ls -l my.imgたとえば、(いいえls -lh、おおよそのサイズを提供し、\lsなどのエイリアスを防ぐls='ls -h')、またはを使用して画像のサイズを決定しますstat -c %s my.img

ソースとコピーを一度だけ確認するには、ファイルを比較します。ハッシュを使用すると、ワンタイム比較には役に立たず、作業が遅くなり、より多くのコマンドが必要になります。注文するcmpバイナリファイルを比較してみてください。イメージファイルとSDカードの対応する部分を渡す必要があります。使用headSDカードの先頭を取り出します。

</dev/sdc head -c "$(stat -c %s my.img)" | cmp - my.img

ハッシュは、ハッシュを計算するために各インスタンスを一度だけ読み取る必要があるため、複数の比較を実行したい場合に便利です。データの破損が心配なので、どんなハッシュでも可能です。セキュリティ上の理由からファイルが変更されていないことを確認する必要がある場合やcksum適切ではないため、代わりにまたはをmd5sum使用する必要があります。sha256sumsha512sum

md5sum <my.img >my.img.md5sum
</dev/sdc head -c "$(stat -c %s my.img)" | md5sum >sd-copy.md5sum
cmp my.img.md5sum sd-copy.md5sum

最初のコマンドの入力リダイレクトに注意してください。これにより、チェックサムファイルにファイル名が含まれないため、チェックサムファイルを比較できます。チェックサムファイルと確認するコピーがある場合は、直接使用できます。

</dev/sdc head -c "$(stat -c %s my.img)" | md5sum -c my.img.md5sum

ああ、そして使用しないでくださいdd、これは遅く(またはせいぜい高速ではありません)、複製エラーを検出しません。

おすすめ記事