概要
サーバーからSCP,SFTP等を使ってファイルを転送する場合に,転送したファイルが壊れてオリジナルと差異が生まれてしまう場合がある。
特に,転送途中での一時中断や大容量ファイルの転送時に起こりやすい。
md5sumで検証する例を記載する。
実際の手順
サーバー側(転送元)
ファイルごとのハッシュのリストを作る。
カレントディレクトリ内の全ファイルが対象の場合は,以下のコマンドを実行する。
md5sum * > MD5SUM
出力結果であるMD5SUMをローカルに転送する。
ローカル側(転送後)
転送したディレクトリ上で以下のコマンドを実行する。
md5sum -c MD5SUM
リスト上のファイルのハッシュを確認し,比較の結果を出力してくれる。
例
カレントディレクトリ以下のファイルをRecursiveにチェックサム
find . -type f |grep -v -E 'conf.*.gro' |xargs md5sum > MD5SUM &
grep -v
でリストから除外したいファイルを除いている。
正規表現を使うために-E
オプションを付けている。
参考