rsyncを使用して、特定の日以降に作成または変更されたファイルのみをバックアップしようとしています。その理由はその日のシステム全体がバックアップされたからだ。ただし、これらのグローバルバックアップファイルはアーカイブに隠されているため、rsyncの実行中にテスト用にアクセスできません。
少しの調査とマニュアルページを読んで、試行錯誤の末に私はこれを思い出しました。ほぼ働く:
find "/directory-to-backed-up/" -type f -newer "<DATE-OF-LATEST-GLOBAL-BACKUP>" -print | \
../rsync -v --progress --log-file=./rsync.log -rlt -z -m --chmod=a=rw,Da+x --delete \
--files-from=- \
--exclude-from=exclude.txt \
/ \
"backuphost.lan::updateback/"
なぜ「ほぼ」なのか?私の問題は、--deleteオプションがソースから見つからなくなったファイルを削除できないことです。 findがソースから欠落しているファイル名を見つけることができず、rsyncの引数として提供されなかったためと考えられます。
特定の日付よりも最新のファイルのみを同期し、ソースに見つからなくなったbackuphost.lanのターゲットからすべてのファイルを削除するにはどうすればよいですか?