このコマンドは、パスワードなしのsshで正常に機能します。
rsync -aqve ssh ${user}@${remote_Host}:/etc/bind /tmp/etc/bind
ルート権限で自分のローカル/ etc/bindに直接rsyncしたいので、次のことを試しました。
Sudo rsync -aqve ssh ${user}@${remote_Host}:/etc/bind /etc/bind
しかし今、私はパスワードプロンプトを受け取ります(これは悪いです)。
パスワードプロンプトなしでローカルの/ etc/bindに直接コピーするようにこの行を修正するにはどうすればよいですか?
自分のユーザーでこれを行うときは、自分の$HOME/.ssh/
ディレクトリにあるSSHキーを使用しています。 Sudo
を使用してrootとして実行している場合、ssh
はrootのホームディレクトリで.ssh
ディレクトリを探しますが、キーはそこにありません。
これを修正する4つの方法があります-それらのいずれかが機能するはずです:
authorized_keys
の新しいsshキーを作成し、パブリック部分を追加します.ssh
ディレクトリにコピーします。 (既存のキーを上書きしないように注意してください!)Chris Downが言うように、コマンドを使用して既存のSSHキーを使用します
$ Sudo rsync -aqve 'ssh -i ~user/.ssh/id_rsa' \
${user}@${remote_Host}:/etc/bind /etc/bind