centosとubuntuの大容量rsyncファイルのハッシュは異なりますか?

centosとubuntuの大容量rsyncファイルのハッシュは異なりますか?

リモートCentosからローカルUbuntuに大容量ファイルを同期します。

rsync -avzP user@<remote-ip>:/path/to/file .

移籍は順調に進んでいることが分かった。

sent 30 bytes  received 257,293,476 bytes  1,296,188.95 bytes/sec
total size is 8,217,194,015  speedup is 31.94

私が知っている限り、rsyncは転送が完了した後に自動的にハッシュをチェックし、転送がスムーズに進行していることを確認します。

好奇心でcentosとubuntuからmd5ハッシュを計算しましたが、違います。

centos: 0faa300b7b0b81bfe65199da932eb6e2
ubuntu: f3a0fcc59516d4e68fd207bdbb1fc169

両方のハッシュは次のように計算されますmd5sum

centos> md5sum --version
md5sum (GNU coreutils) 8.22

ubuntu> md5sum --version
md5sum (GNU coreutils) 8.25

それではバージョンが少し異なりますが、結果的にハッシュ値は異なりますか?

編集する:

ls -l出力は次のとおりです。

centos: -rw-rw-r--.  1 username username 8217194015
ubuntu: -rw-rw-r--   1 username username 8217194015

Centos出力には聞いたことのない不思議なビットが含まれています。 (lvmと関係がありますか?centosはlvmを使用します)

編集2:

検査によってmd5sum -b他の結果が出ることもあります。

centos: 0faa300b7b0b81bfe65199da932eb6e2
ubuntu: 6d799f6981066d82c7f861576b4980e1

rsyncはどのハッシュアルゴリズムを使用しますか?ウィキペディアによるとrsync は md5 を使用してチャンクが同じであることを確認します。

受信者はファイルのコピーをチャンクに分割し、チャンクごとに2つのチェックサム、つまりMD5ハッシュと弱いが計算しやすい「ローリングチェックサム」を計算します。このチェックサムを送信者に送信します。送信者は、ファイルバージョンの各ブロックのローリングチェックサムをすばやく計算します。同じ場合、送信者は計算コストが高くなるMD5ハッシュを使用して、ブロックが同じであることを確認します。

ベストアンサー1

ここに間違った仮定があります。

私が知っている限り、rsyncは転送が完了した後に自動的にハッシュをチェックし、転送がスムーズに進行していることを確認します。

Rsync はチェックサムを使用して同期が必要かどうかを判断します。ただし、Rsyncは生成されたコピーを再度読み取らず、カーネルがエラーを報告すると信頼します。結論は簡単です。これらのファイルは同じではありません。多分少し、多分それ以上であるかもしれません。チェックサムは不一致の数を知らせることができません。

おすすめ記事