rsyncは他のファイルを宣言しますが、diffはそうではありませんか?

rsyncは他のファイルを宣言しますが、diffはそうではありませんか?

ローカルとサーバーにファイルがあります。まず、rsync「ドライラン(dry-run)」モードで実行して、ファイル間にいくつかの違いがあることを確認しました。

$ rsync -aP --dry-run [email protected]:/home/dir .
[email protected]'s password: 
receiving incremental file list
dir/myfile.txt

dir/myfile.txtこれは明らかにファイルが更新されるため、ファイルが異なることを意味します。その後、以下を使用して同じファイルを確認しましたdiff

$ ssh [email protected] 'cat /home/dir/myfile.txt' | diff --report-identical-files - dir/myfile.txt
[email protected]'s password: 
Files - and dir/myfile.txt are identical

したがって、明らかにこれらのファイルは同じです。

このファイルが更新されるのはなぜrsyncですか?コマンドラインで理由をどのように確認できますか?

ベストアンサー1

rsync変更レポート

  • 権限の違い
  • タイムスタンプの違い
  • コンテンツ(およびファイルサイズ)の違い

@roaimaはコメントから選択できると指摘しました。rsync のマニュアルページ:

-i, --itemize-changes       output a change-summary for all updates

あなた可能要約が簡潔で(私が持っているバージョンでは)報告するだけでしたが、役に立ちました。タイプ(ファイル、リンク、ディレクトリ)と名前。以下は、Debian 7およびテストシステムでrsync 3.0.9-4および3.1.1-3を使用した結果です。

cd+++++++++ backup-invisible-island/
>f+++++++++ backup-invisible-island/.bash_history
cL+++++++++ backup-invisible-island/conf -> ../system/invisible-island.net/conf
cL+++++++++ backup-invisible-island/statistics -> ../system/invisible-island.net/statistics
cd+++++++++ backup-invisible-island/anon_ftp/
cL+++++++++ backup-invisible-island/anon_ftp/AdaCurses -> pub/AdaCurses
cL+++++++++ backup-invisible-island/anon_ftp/DEBS -> pub/DEBS
cL+++++++++ backup-invisible-island/anon_ftp/GIT -> pub/GIT

私が直接使用している場合は、ディレクトリタイムスタンプを変更することは比較的重要ではありません。私が使用するスクリプトは、次の内容だけを表示します。文書変更点:

rsync:ターゲットの最新ファイルを上書きしたときに表示

おすすめ記事