**編集8/6/15 * したがって、私の問題の中心は、設定ファイルの奇妙な点ではありません。わかりましたが、2つの異なる場所に複数のSSHディレクトリがあり、間違ったディレクトリが使用されました。卑怯なミスだったけど、いつも学ばなければならないんでしょうね?
を使用しようとしていますが、次のエラーが発生することをrsnapshot
理解できません。rsnapshot
rsync: Failed to exec /usr/bin/ssh -p 22 -i /home/thelemur/.ssh/id_rsa_n900: \
No such file or directory (2)
私にとって奇妙なことは、ssh
問題なくbash端末で同じコマンドラインを実行できることです。バックスラッシュを使用し、rsnapshot
ルートディレクトリにコマンドを入力して設定ファイルsudo
に直接挿入することも試みました。rsnapshot
また、設定ファイルでタブの場所を確認しました。私が間違っていることを知っている人はいますか?
答え1
このコマンドをcmd_ssh行に次のように入力した場合:
cmd_ssh /usr/bin/ssh -p 22 -i /home/thelemur/.ssh/id_rsa_n900
それから残念ながらrsnapshot
。問題は、cmd_ssh
引数が実行の代替として完全な値(スペースを含む)を取るssh
ことですが、この場合、あなた(そしてあなたの前の私)が望むのはオプションのシェル解析であるということです。
あなたがしなければならないことは、ssh
必要な呼び出しを含む小さなスクリプトをssh
生成します$HOME/.ssh/ssh_config
。
前者は簡単です。たとえば、スクリプトに次のように入力します/home/thelemur/.ssh/ssh_with_id_rsa_n900.sh
。
#!/bin/sh
exec ssh -p 22 -i /home/thelemur/.ssh/id_rsa_n900 "$@"
その後、実行可能にし、chmod u+x /home/thelemur/.ssh/ssh_with_id_rsa_n900.sh
最後に設定rsnapshot
で使用します。
cmd_ssh /home/thelemur/.ssh/ssh_with_id_rsa_n900.sh