rsyncの使い方

SSH経由で同期処理が可能なとっても便利なコマンド「rsync」の使い方のメモです。

 

基本

rsync -r ~/data/ bbb.tamurasouko.com:~/sync_data/
ホームディレクトリのdataディレクトリ配下のファイルを、リモートサーバー(bbb.tamurasouko.com)のホームディレクトリにあるsync_dataディレクトリ配下に同期(コピー)します。-rオプションをつけないとディレクトリ配下のファイルを再帰的に同期してくれないので、ほとんどの場合、このオプションを付けることになります。

 

SSHのポート番号を指定

セキュリティ対策の一環として、SSHのポート番号を変えていることがあると思います。その場合は以下のようにしてリモートサーバーのSSHのポート番号を指定します。
rsync -e "ssh -p 3862" -r ~/data/ bbb.tamurasouko.com:~/sync_data/

 

注意点

rsyncはcronを使って定期的に自動実行する場合が多いと思いますが、SSHの鍵にパスフレーズがついていると、rsync実行時に毎回パスフレーズの入力が求められるため、自動化ができません。この問題への手っ取り早い対策は、SSHの鍵の生成時にパスフレーズを指定しないことです。

えっ?パスフレーズなしで大丈夫なのかって? 大丈夫です。秘密鍵が漏れない限り心配いりません。私もつい最近まで勘違いしていたのですが、パスフレーズはSSHの鍵の生成の「種」として使われるのではなく、別なレイヤーでの保護措置に使われるものだからです。えっ?別なレイヤーって何かって? えーと、それは。。

 

環境

CentOS 6.4
rsync 3.0.6

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です