ISOイメージからDVDが焼けました。isoイメージのsha256sumもあります。ハッシュを比較するために、DVDからISOイメージを作成して実行sha256sum image.iso
しましたが、元のイメージのハッシュとは異なります。
これはDVDのハッシュを計算する正しい方法ですか?そうでない場合、なぜ機能しないのですか?
編集:アーロン・ミラーがコメントで提供した理由を誰かが説明できますか。元のisoとまったく同じオプションでisoファイルを作成する方法はありますか?
ISOイメージからDVDが焼けました。isoイメージのsha256sumもあります。ハッシュを比較するために、DVDからISOイメージを作成して実行sha256sum image.iso
しましたが、元のイメージのハッシュとは異なります。
これはDVDのハッシュを計算する正しい方法ですか?そうでない場合、なぜ機能しないのですか?
編集:アーロン・ミラーがコメントで提供した理由を誰かが説明できますか。元のisoとまったく同じオプションでisoファイルを作成する方法はありますか?
回答:
これを行うことがわかった唯一の方法は、画像ではなくファイル自体をハッシュすることです。Febooti Hash&CRC(Windows)やQuick Hash GUIなどのツールを使用すると、問題のファイルをすべて選択し、右クリックしてハッシュを記録できます。もちろん、コマンドラインからsha256sumを使用しても同じことができます。これらのファイルをディスクに書き込んだ後、ディスク上のファイルを参照し、以前と同様にハッシュを確認します。ハッシュは一致するはずです。
追加の考え:
現在のプロセスは、チェックするディスクからisoを作成することであることを示します。これは余分で不必要なステップだと思います。ディスクを挿入し、ディスク上のファイルをハッシュして、元のイメージにあるファイルのハッシュと比較します。最初にisoを作成する必要はないため、これははるかに高速です。
更新:
これはDVDのハッシュを計算する正しい方法ですか?
まず、このサイトで行ったように、DVD自体の sha256sumを取得します。
...すでにCDを作成したので、戻って確認しますか?sha1sumまたはmd5sumがあれば簡単です。
...
DVD-RWドライブは/ dev / hdaです
g33kgrrl @ home〜/ Desktop $ sha1sum / dev / hda
89164d79d84f483c3642f25507186e58bf5fc0d8 / dev / hda
sha1sumを使用しますが、sha256sumでも同じように機能するはずです。まず、元のisoのハッシュと比較します。
そうでない場合、なぜ機能しないのですか?
特定のケースでは、コピーまたは元の画像のいずれかに末尾のゼロがあるため、サイズがわずかに異なる場合があります
彼は、これが事実であるかどうかを調べるためのいくつかの手順を提供しています、引用:
たとえば、copy.isoがorig.isoより小さい場合:
sha1sum copy.iso
head -c $(stat -c %s copy.iso) orig.iso
もちろん、後続のバイトがゼロであることも確認する必要があります。
od -j $(stat -c %s copy.iso) orig.iso
最後に、新しい質問に戻ります。
元のisoとまったく同じオプションでisoファイルを作成する方法はありますか?
私はまだこれを行う方法を見つけていません。ただし、各ステップのハッシュを取得すれば、少なくとも違いが発生した場所を確認できます。私の推測では、ISOファイルを書き込むプログラムは、書き込みに必要ないくつかの手順を実行しますが、イメージを何らかの方法で変更しますか?
この質問の範囲外ではありますが、毎回同じように変更されるかどうかを確認するのは興味深いでしょう。つまり、複数のディスクを作成して、ハッシュがすべて同じであるかどうかを確認しますか?
元の回答:
これがあなたの質問を満たしているかどうかわからない(おそらく、既存のアプリケーションがすでにこの機能を実行している)
ただし、ImgBurnユーティリティ(windowsユーティリティ、申し訳ありません)を入手した場合、ISOイメージを使用してディスクを「検証」する機能があります。
私の推測では、ボンネットの下でこれは、あなたがやろうとしていることを達成するためにいくつかの追加のステップを実行します。それがオープンソースではないことを残念に思うか、コードを引き出して何が起こっているかを正確に見ることができます。
おそらく、同様の機能を持ち、オープンソースである他の書き込みユーティリティがありますか?
これは私のために働いた(しかし、完了するのに約20分かかった):
# dd if=/dev/sr0 |sha256sum
cat
を使用した代わりにのみですdd
。それが20分かかった理由です。