rsync を使用してバックアップする場合、完全なディレクトリ構造を維持するにはどうすればよいですか?
たとえば、リモートサーバーは土星バックアップしたい土星の/home/udi/ファイル/写真ローカルディレクトリにバックアップ。
(地元で)欲しいバックアップ/ホーム/udi/ファイル/写真それよりもバックアップ/写真。
答え1
完全なパスを保持するには、-R
またはオプションを使用します。--relative
答え2
関連するもう 1 つの一般的な使用例は、ディレクトリ ツリーの選択した部分を保持することです/./
。たとえば、次のようにします。
/home/udi/files/pictures
行く先:
backup/files/pictures
あなたは書ける:
rsync --relative /home/udi/./files/pictures backup
マジックは、そのパスをシステム コールに渡す前に/./
によって特別に解析され、ディレクトリの作成を開始する場所を指示します。は、他の POSIX ユーティリティでは一般に何の意味もありません。たとえば、パスはPOSIX の場合と同じです。rsync
/./
a/./b
a/b
答え3
Cygwin Windows rsync を使用し、リモート rsync がルートを指していると仮定すると、次のようにします。
rsync -vtrz --delete server::rsyncid/home/udi/files/pictures /cygdrive/d/backup/home/udi/files
これにより、リモートの写真ディレクトリの内容が /backup/home/udi/files/pictures に配置されます。おそらく、UNIX での構文も同様になります。
JR
答え4
rsyncをいつ開始するかに応じてcronで変更を加えることができます
rsync -avz -e ssh ruser@rserver:/home/udi/files/pictures/* /backup/pictures/
また、パスワードなしでリモートサーバーに接続するためにSSHキーを追加することもできます。