rsyncの--link-destオプションをデバッグする方法は?

rsyncの--link-destオプションをデバッグする方法は?

報告する方法はありますかrsyncなぜファイルをハードリンクするのではなく、ファイルの新しいコピーを作成することにしましたか? (例:タイムスタンプやコンテンツ変更の検出などによる)

(増分バックアップを作成していますが、時間が経っても変更されてはならない一部のファイルはまだハードリンクの代わりにコピーされています。)

関連していますが、私の問題は解決しません。 rsync --link-dest が接続されていない

その質問に みんなファイルはリンクされずにコピーされますが、私の場合にのみ一部ファイルがコピーされています。したがって、コマンド構文が正しいようです。

参考までに、私が使用するコマンド例:

rsync -av -delete --link-dest=/path/to/previous/backup/ /path/to/source/ /path/to/new/backup/

(最後にスラッシュがあるので注意してください!)

答え1

--itemize-changes代わりに(または-i)を使用すると、-v実行中のファイルの問題の原因に関する詳細情報を取得できますrsync

たとえば、ファイルのグループ所有権が変更されたが他のものが変更されていない場合は、cf.....g...同様の内容を見ることができます。最初の文字は「更新タイプ」であり、c単に「変更」を意味します(つまり、ファイルデータ転送ではありません)。fファイル形式(「一般ファイル」)は次のとおりです。g文字列が遠いほど、ソースとターゲットのグループが異なることを意味します。

これについてはマニュアルに記載されていますrsync--itemize-changesこのオプションの詳細な説明をご覧ください。

ファイルのメタデータが変更されると、そのファイルは同じファイルの既存のコピーへのハードリンクとして作成できなくなります--link-dest。同じファイルへのハードリンクは異なるメタデータを持つことはできません。

関連情報