異なる宛先ポートでrsyncを実行する方法

異なる宛先ポートでrsyncを実行する方法

2 つのホスト間で接続しようとしていますrsync。ソース ホストには宛先サーバーに SSH キーがあり、パスワードなしで SSH 接続できることを確認しました。宛先サーバーはポート 2209 経由の SSH 接続を許可しています。

ソース ホストで以下のコマンドを実行すると、>bash のプロンプトが表示されるだけで、何も起こりません。

rsync -avz -e "ssh -p 2209” /var/www/ root@DESTINATION_IP:/srv/OLD_backup

他のバリエーションも試しました:

rsync -avz -e "ssh -p 2209” root@DESTINATION_IP:/srv/OLD_backup /var/www/

rsync -avz /var/www/ -e "ssh -p 2209” root@DESTINATION_IP:/srv/OLD_backup

答え1

分かりました。ssh を指定するときに一重引用符を使用する必要がありました。

rsync -avz -e 'ssh -p 2209' /var/www/ root@DESTINATION_IP:/srv/OLD_backup

答え2

コマンドには、プレーン ASCII 引用符 (コマンド ラインで必要な種類) と、ファンシー Unicode 引用符 (シェルが認識しない) が混在しています。具体的には、その"ssh -p 2209”部分はプレーン引用符で始まり、ファンシー引用符で終わります。

関連情報