GNU/Linux >> Linux の 問題 >  >> Linux

Cd / DVDのMd5sumを計算しますか?

CDに書き込んだISOファイルがあります。 CDが正しく作成されているかどうかを確認するにはどうすればよいですか? ISOファイルで計算したハッシュサムでチェックするために使用できるハッシュサムを計算するコマンドが欲しいのですが。理想的には、コマンドは次のようにする必要があります。

  • ISOファイルに関係なく機能します。つまり、ディスク内の各ファイルのハッシュサムのリストを保持したり、ブロック数を覚えたりしたくありません。
  • 比較的短くしてください。1行のコマンドは優れています。2行の長さのコマンドのチェーンは問題ありませんが、1ページにまたがるスクリプトは問題ありません。
  • かなり効率的である:たとえば、dd ディスクをファイルに戻し、md5sumを実行します ファイル上では受け入れられません

すべてを満たすことができない答えがない場合は、私も最も近い試合に感謝します。なぜそれほど単純ではないのか教えていただければさらに良いです。

承認された回答:

基本的な問題は、元々ISOにあったものとまったく同じ情報のmd5sumを取得したいということです。 ISOをCDに書き込む場合、ディスクの端に空白がある可能性があり、必然的にmd5sumが変更されます。したがって、非常に短い方法:

md5sum /dev/cdrom

機能しません 。動作する(そしてオンラインドキュメントで一般的である)のは、デバイスから正確なバイト数を読み取り、md5sumを実行することだけです。 。バイト数がわかっている場合は、次のようなことができます。

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

ここで、「xxxxx」はバイト単位のisoのサイズです。

手元にあるバイト数がわからないが、ディスクにisoが残っている場合は、次のように(ここから取得)、lsを使用してバイト数を取得できます。

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

動作するはずの他の多くの単線構造があります。いずれの場合も、ddを使用していることに注意してください。 ディスクからバイトを読み取るために使用しますが、これらをファイルにパイプするのではなく、すぐにmd5sumに渡します。

関連:バッテリーの充電と放電の時間を計算する方法は?

より大きなブロックサイズ(bs=)を使用するためにいくつかの計算を行うことにより、速度を改善できる可能性があります。 ddで コマンド)。


Linux
  1. Linux –すべてがファイルですか?

  2. ファイルの一部を並べ替えますか?

  3. CD/DVD ドライブのボタンを無効にするにはどうすればよいですか?

  1. CD / DVDのファイルシステムを見つけて自動的にマウントする方法:[Linux]

  2. リダイレクトの順序は?

  3. Ubuntu – Cd / dvd / bdが挿入されたときにコマンドを実行しますか?

  1. stat コマンドはファイルのブロックをどのように計算しますか?

  2. bash スクリプトで md5 の合計を比較する

  3. Linuxラップトップ(ubuntu)でcd / dvdボタンを無効にします