rsync + sshで鍵ファイル認証でリモートサーバに転送する方法

"ssh -i 鍵ファイル" でログインできるリモートサーバに対して、rsyncでデータを送りつける方法
$ rsync -r  -e "ssh -i /home/foo/.ssh/keyfile" /path/to/dir  username@example.com:/path/to/foo/
  • /home/foo/.ssh/keyfile  手元のローカルマシンにある鍵ファイル
  • /path/to/dir ローカルにあるディレクトリ
  • username@example.com リモートマシン上のユーザ名とホスト名
  • /path/to/foo/ リモートマシン上のディレクトリ
結果、リモートマシン上に/path/to/foo/dirというディレクトリが作成される。

このようにすればSSHのパスワードを聞かれずにコマンド実行できるので、スクリプトから実行するときにオススメです。

(リモートサーバ上のSSHの設定を適切にやっておく必要があります)
カテゴリ:

人気記事