web-dev-qa-db-ja.com

rsyncがメインディレクトリをスキップするのはなぜですか?

リモートデプロイビルドスクリプトをテストするために、ryncをローカルサーバー(Windowsマシン上)からリモートサーバー(osxボックス)に使用しようとしています。 2つのLinuxサーバー間で問題なく以前にrsyncを実行しましたが、現在問題が発生しています。出力は次のとおりです。

$ rsync -v -e ssh [email protected]:/Library/WebServer/sites/staging/app1/ ./export

skipping directory /Library/WebServer/sites/staging/app1/.

sent 8 bytes  received 13 bytes  3.82 bytes/sec
total size is 0  speedup is 0.00

$ 

または

$ rsync -avz -e ssh [email protected]:/Library/WebServer/sites/staging/app1/ ./export

receiving file list ... done
./

sent 26 bytes  received 68 bytes  17.09 bytes/sec
total size is 0  speedup is 0.00


$ 

リモートのapp1ディレクトリは空ですが、ローカルのエクスポートディレクトリには4つのサブディレクトリがあり、それぞれに多数のファイルがあります

52
chrisan
rsync -v -e ssh [email protected]:/Library/WebServer/sites/staging/app1/ ./export

-r-aのように再帰モードにするオプションを指定していません。

リモートのapp1ディレクトリは空ですが、ローカルのエクスポートディレクトリには4つのサブディレクトリがあり、それぞれに多数のファイルがあります

ここには逆のオプションがありますか?コマンドはrsync [source] [DESTINATION]である必要があります。 app1ディレクトリが空で、空のディレクトリをコピーしようとしている場合は、何もする必要はありません。

おそらく、代わりにこのようなものが必要ですか?

rsync -avz ./export/  [email protected]:/Library/WebServer/sites/staging/app1/ 

また:

  • ほとんどの場合、rsyncを使用してディレクトリの末尾にスラッシュを含める必要があります。
  • 過去5〜10年間にリリースされたrsyncのほとんどすべてのバージョンは、デフォルトでsshを使用するようにリモート転送されています。おそらく、-e sshを指定する必要はありません。
70
Zoredache

コマンドに次のオプションを追加して、ログファイルを出力するrsyncの組み込み機能を有効にしてみます。

--log-file=/path/to/log.file

-vオプションを追加して、詳細度を上げることもできます。 -avvz、manページによると、「2つの-vオプションは、スキップされているファイルに関する情報と、最後に少し多くの情報を提供します。」

返されたこの情報が問題の特定に役立たない場合は、質問を編集して、追加の出力を追加してください。

3
Bryan