01. コマンドの概要 md5sum - MD5検証コードを計算して検証する md5sum コマンドは、MD5 メッセージ ダイジェスト アルゴリズム (128 ビット) を使用して、ファイルのチェックサムを計算し、チェックします。一般的に、Linux をインストールすると、コマンドライン ターミナルで直接実行できる md5sum というツールが存在します。 MD5 アルゴリズムは、ネットワーク ファイル転送の整合性を検証し、ファイルの改ざんを防ぐためによく使用されます。 MD5 は Message-Digest Algorithm 5 の略です。このアルゴリズムは、任意の長さの情報をビットごとに計算し、バイナリ長 128 ビット (16 進数では 32 ビット) の「フィンガープリント」(または「メッセージ ダイジェスト」) を生成します。異なるファイルで同じメッセージ ダイジェストが生成される可能性は、非常に低いです。 02. コマンド形式 使用方法: md5sum [オプション]... [ファイル]... 03. 共通オプション MD5検証コードを表示または検証します。FILEがない場合、またはFILEが-の場合、 -b, --バイナリ 04. 参考例 4.1 ファイルのmd5値を生成する [deng@localhost テスト]$ md5sum /etc/passwd 134edeaf80dc359ed33dc53eb8967920 /etc/passwd [deng@localhost テスト]$ 4.2 複数のファイルのmd5値を生成する [deng@localhost テスト]$ md5sum * 134edeaf80dc359ed33dc53eb8967920 パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード1 [deng@localhost テスト]$ 注: md5sum はファイルの内容を確認するものであり、ファイル名とは関係ありません** 4.3 異なるモードで同じファイルのmd5値を計算する [deng@localhost test]$ ファイル パスワード パスワード: ASCII テキスト [deng@localhost テスト]$ md5sum パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード [deng@localhost テスト]$ md5sum -b パスワード 134edeaf80dc359ed33dc53eb8967920 *パスワード [deng@localhost テスト]$ md5sum -t パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード [deng@localhost テスト]$ 読み取りモードは異なりますが、md5 を計算するときはビットごとにチェックされるため同じです。次のテキスト ファイルは、どのモードで読み取っても同じ md5 になります。 4.4 md5 リダイレクト 生成された md5 値を指定されたファイルにリダイレクトします。通常、ファイル拡張子は .md5 です。 [deng@localhost テスト]$ md5sum パスワード > パスワード.md5 [deng@localhost テスト]$ md5sum パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード [deng@localhost テスト]$ cat passwd.md5 134edeaf80dc359ed33dc53eb8967920 パスワード [deng@localhost テスト]$ 4.5 複数のファイルのmd5を指定したファイルにリダイレクトする [deng@localhost テスト]$ md5sum * > d.md5 [deng@localhost テスト]$ cat d.md5 134edeaf80dc359ed33dc53eb8967920 パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード1 8b7e9d66d329c74071b8a01800f4deb9 パスワード.md5 [deng@localhost テスト]$ 4.6 リダイレクトの追加 ここで、新しいファイルlsを追加し、そのmd5を個別に計算し、そのmd5をファイルに追加します。 [deng@localhost テスト]$ md5sum /bin/ls >> d.md5 [deng@localhost テスト]$ cat d.md5 134edeaf80dc359ed33dc53eb8967920 パスワード 134edeaf80dc359ed33dc53eb8967920 パスワード1 8b7e9d66d329c74071b8a01800f4deb9 パスワード.md5 a78c13d806e594dc4014d145d689f23d /bin/ls [deng@localhost テスト]$ 4.7 md5検証 -c オプションはファイル md5 を検証します。検証中は、生成された md5 に基づいて検証が実行されます。現在のファイルの md5 を生成し、以前に生成された md5 と比較します。一致している場合は OK を返し、一致していない場合はエラー メッセージを返します。 [deng@localhost テスト]$ md5sum -c d.md5 passwd: OK passwd1: OK passwd.md5: OK /bin/ls: OK [deng@localhost test]$ ファイルを変更した後、ファイルmd5が変更されます [deng@localhost テスト]$ vim パスワード [deng@localhost テスト]$ md5sum -c d.md5 passwd: 失敗 passwd1: ok passwd.md5: ok /bin/ls: ok md5sum: 警告: チェックサムの不一致が 1 つあります [deng@localhost test]$ 4.8 出力を表示せず、戻りコードを使用して成功か失敗かを示す –status、検証情報を表示せず、コマンドの戻り値に基づいて判断します。検証が一致している場合は0を返し、一致していない場合は1を返します。 [deng@localhost テスト]$ md5sum -c --status d.md5 [deng@localhost test]$ echo $? 1 [deng@localhost テスト]$ 4.9 問題がないと確認されたファイルを除外する [deng@localhost test]$ md5sum -c d.md5 | grep -v "OK" md5sum: 警告: 1 チェックサム不一致 passwd: 失敗 [deng@localhost test]$ 特別な指示 2) md5sum 値はビットごとに検証されるため、ファイルが大きいほど検証時間が長くなります。 要約する md5sum を使用してファイル検証コードを生成し、異常なファイル転送 (ネットワーク転送、コピー、異なるローカル デバイス間の転送) によって発生したファイル コンテンツの不一致を検出します。 業務実践の応用シナリオ: 変更が開発者の言ったことと一致しているかどうかを確認するには、rc1.tar.gz パッケージと rc2.tar.gz パッケージを比較する必要があります。 1. パッケージを受け取って正しいことを確認する パッケージを入手したら、パッケージのMD5値を確認します: md5sum rc*.tar.gz 2. 指定されたディレクトリに解凍する 対応するディレクトリが存在することを確認してください tar -zxvf rc1.tar.gz -C ./test_rc1 tar -zxvf rc2.tar.gz -C ./test_rc2 3. 各ファイルのMD5値を再帰的に生成する ./test_rc1 -type f -print0| xargs -0 md5sum >> rc1_md5.txt を検索します。 ./test_rc2 -type f -print0| xargs -0 md5sum >> rc2_md5.txt を検索します。 4. 2つのファイルのMD5値を比較する diff -c rc1_md5.txt rc2_md5.txt または UltraCompare Professional を使用して結果を比較します 上記は Linux md5sum コマンドの詳細な使用方法です。Linux md5sum コマンドの詳細については、123WORDPRESS.COM の他の関連記事をご覧ください。 以下もご興味があるかもしれません:
|
>>: React ページ ターナーの実装 (フロント エンドとバックエンドを含む)
この記事では、ドラッグ可能なモーダルボックスを実装するためのJavaScriptの具体的なコードを参...
実際には、N 秒後にページを自動的にジャンプさせるにはどうすればよいかという問題によく遭遇します。私...
この記事では、JD.comのフラッシュセール効果を実現するためのJavaScriptの具体的なコード...
序文: Linux システムでの rm は元に戻せません。コマンドの設計自体に問題はありません。問題...
この記事では、例を使用して、MySQL ビューの一貫性を確保する方法 (チェック オプションを使用)...
製品デザインのプロセスにおいて、デザイナーは常に写真を非常に美しくすることを好みます。仮想ページのコ...
この記事では、従業員管理登録ページを実装するためのjQueryの具体的なコードを例として紹介します。...
エラーの説明Docker Desktop をインストールすると、WSL2 (Windows ベースの...
Centos7 上で openresty 用の Dockerfile を作成し、ビルドしました。 d...
最初のパラメータ渡し方法は、動的ルーティングパラメータ渡しです。リンクのパス属性を設定することで、ル...
序文テーブルを削除するには、無意識に思い浮かぶコマンドは、DROP TABLE "テーブル...
1.# # は Web ページ内の場所を表します。右側の文字はその位置の識別子です。たとえば、ht...
シンプルな Linux 推測ゲームのソースコードゲームのルール:数字当てゲームは通常 2 人でプレイ...
Nginx ngx_http_image_filter_module モジュール (nginx バ...
1. refがコピーされ、ビューが更新されますrefを使用してオブジェクトのプロパティ値をレスポンシ...