linux コマンド md5sum ファイルのダウンロードチェック

バイオインフォ道場、くまぞうです。

バイオインフォマティクスでは、大きなデータを扱う機会が良くあります。大きなデータや大量のデータをネット経由でダウンロードする際は、きちんとダウンロードできたか心配になるときがあります。このようなとき、簡単にチェックできて便利なのがMD5値です。

スポンサーリンク



MD5とは

ダウンロード失敗してファイルが破損していないか?または、大事なデータを誰かに改ざんされていないか?を確認するのに利用されるのがMD5値です。データ毎にユニークな値になるので、配布先データ(MD5参照)とダウンロード後のデータ(MD5算出)についてMD5値を比較することで、一致を確認することができます。専用コマンドで簡単に確認できるので、できるだけ利用すると安心・安全です。

MD5は、電子署名を必要とするアプリケーション向けに開発された。RSAで署名を生成する際に、メッセージを直接対象として署名を生成するのではなく、メッセージのハッシュ値を生成し、ハッシュ値に対して署名を生成する。ファイルを転送する際にそのファイルが破損していないことを確認するためにも用いられる。配布する側は、ファイル配布時にそのファイルのMD5ハッシュ値(いわゆるMD5チェックサム)も同時に配布する。受信したユーザは手元でファイルのMD5値を計算して、配布者の提示したMD5値と一致することを確認すれば良い。

【出展】 Wikipedia MD5

正常にダウンロードできたか?MD5を確認する

md5sumコマンドの使い方

ダウンロードしたファイルからMD5値を計算するのが、md5sumコマンドです。データに破損などがあった場合はmd5値が一致しません。この場合、適切にファイルがダウンロードしていないので、もう一度ダウンロードしましょう。

ファイルのMD5値を算出して比較する

配布先から提供されたMD5値(origin.md5)に対して、ダウンロード済みのファイル(mydata.gz)のMD5値を計算します。一致すれば、ダウンロード成功です。

  $ cat origin.md5
  12345678901234567890123456789012  mydata.gz

  $ md5sum mydata.gz #download済みデータとして
  12345678901234567890123456789012  mydata.gz

MD5値のリストを使ってチェックする

大量のファイルを比較する場合は、配布先から提供されたMD5値をリスト(md5_list)にして、カレントディレクトリにある「ダウンロード済みファイル(mydata1〜4.gz)」と自動比較を行うと便利です。md5sumの-cオプションにリストを指定します。一致すれば、「OK」と表示されて、ダウンロード成功です。

  $ cat md5_list  #配布先で示されるファイルのMD5をリスト化
  12345678901234567890123456789012  mydata1.gz
  23456789012345678901234567890123  mydata2.gz
  34567890123456789012345678901234  mydata3.gz
  45678901234567890123456789012345  mydata4.gz

  $ ls
  mydata1.gz
  mydata2.gz
  mydata3.gz
  mydata4.gz

  $ md5sum -c md5_list
  mydata1.gz: OK
  mydata2.gz: OK
  mydata3.gz: OK
  mydata4.gz: OK
スポンサーリンク



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です