rsyncが実際のファイルと名前の重複した隠しファイルを生成しすぎるのはなぜですか?

rsyncが実際のファイルと名前の重複した隠しファイルを生成しすぎるのはなぜですか?

定期的にrsyncを介して同期するディレクトリがありますrsync -rva。今日、私はたとえば、私が持っている多くのファイルのrsyncターゲットに名前を持つ空のファイルpath/to/S00041.jpgもあることを発見しました。path/to/._S00041.jpg誰が作ったのかと思いますrsyncが、確信はありません。これらのファイルはすべて、元のファイルと同じタイムスタンプを持っているため、いつ表示されたのかわかりません。

ソースディレクトリとターゲットディレクトリはどちらもMac OSにあります。これが何らかの方法で役立つ場合は、他の場所とコンピュータからこのディレクトリに同期します(ただし、ディレクトリ構造は常に同じです)。

これがrsyncによって行われているかどうか、そしてその理由は不思議です。 rsyncで自動的に「修正」する方法もありますか?

答え1

MacOSでは、各ファイルの「リソースフォーク」に追加情報を保存できます。デフォルトのMacOSファイルシステムでは、この追加情報はファイル自体の一部として(透明に)保存されます。ただし、非ネイティブファイルシステムにファイルをコピーする場合は、リソースフォークを別々に保存する必要があります。これらは._*ファイルです。最新のアプリケーションはリソースフォークではなくリソースファイルを生成する傾向があるため、これらのデータをエクスポートすると、すべてが単一のファイルに保存されます。

長さがゼロの場合、安全に削除できます。

find /path -name '._*' -type f -size 0 -delete

スキップすることを選択できますが、rsync条件付きでスキップすることはできません。つまり、長さが0の場合にのみ可能です。

引用:

関連情報