通过 ssh(从 debian 笔记本电脑)使用诺基亚 n900 的 rsnapshot 时遇到问题

通过 ssh(从 debian 笔记本电脑)使用诺基亚 n900 的 rsnapshot 时遇到问题

** 编辑 8/6/15 * 所以我的问题的症结并不是配置文件的一些奇怪之处。最后发现我只是在两个不同的地方有多个 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直接将 a 放在rsnapshot配置文件中。我还检查了配置文件中的选项卡位置。有谁知道我做错了什么?

答案1

如果您已将此命令放入 cmd_ssh 行中,如下所示:

cmd_ssh     /usr/bin/ssh -p 22 -i /home/thelemur/.ssh/id_rsa_n900

那么您不幸地惹恼了 . 中的一个有趣的几乎错误rsnapshot。问题是该cmd_ssh参数采用整个值(包括空格)作为ssh运行的替代方案,而您(以及之前的我)在这种情况下想要的是对该选项进行 shell 解析。

您需要做的是创建一个包含必要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

相关内容