私のシステムの別のメディアにある他のディレクトリへのシンボリックリンクを含むディレクトリがあります。
/opt/lun1/2011
/opt/lun1/2010
/opt/lun2/2009
/opt/lun2/2008
/opt/lun3/2007
ただし、シンボリックリンクは次のように表示されます。
/files/2011
/files/2010
/files/2009
/files/2008
/files/2007
シンボリックリンクをたどるrsync
を実行するにはどうすればよいですか?
例えば。:
rsync -XXX /files/ user@server:/files/
-L
rsyncのフラグは、シンボリックリンクではなく、リンクされているファイルまたはディレクトリの内容を同期します。
ちょうどこの問題に遭遇しました。また、rsyncでシンボリックリンクされたディレクトリをディレクトリとして扱う場合は、K
オプションが必要です。
rsync -K /files/ user@server:/files/
both-L
と-K
は、両側にシンボリックリンクがある場合に必要です。すでに1回目のrsyncを実行していて、rsyncを使用してバックアップを更新したい。
-L, --copy-links transform symlink into referent file/dir
-K, --keep-dirlinks treat symlinked dir on receiver as dir
そのような場合、-L
のみを使用すると、受信側のシンボリックリンクが消去され、新しい実際のディレクトリが作成されます。