我正在尝试从索拉里斯服务器到我的Linux服务器,我通过使用成功完成了它scp
。我想将下面的命令作为 cronjob 运行, 如何保存 Solaris 到 Linux 文件传输自动化的密码?
scp -r [email protected]:/usr/abc/* /home/def/
Password:
但每次都会提示输入密码。我已经在我的机器上为我的用户生成了一组公钥和私钥 ssh 密钥:
ssh-keygen
并将我的公钥复制到远程主机:
ssh-copy-id [email protected]
笔记:cron
当两台服务器都是linux服务器时,我成功地运行了它。 Solaris 服务器到 Linux 服务器面临的问题。这里我的本地服务器是linux,远程服务器是Solaris服务器。
答案1
如果它可以使用密钥从命令行运行,那么我看到的一种情况是您正在使用另一用户运行 cron,而不是提取文件的用户。
您可以将命令更改为:
ssh -i <ssh_private_key> -r [email protected]:/usr/abc/* /home/def/
答案2
我相信您已经看过这个:
http://docs.oracle.com/cd/E19253-01/816-4557/sshuser-33/index.html
另外,请参阅 ssh 客户端的手册页,您可能必须强制使用协议版本 1。
首先,据我了解,它甚至不能在交互模式下工作。尝试-v
标志,从一个开始
ssh -v [email protected]
那么,如果这没有告诉你任何事情
ssh -vv [email protected]
作为最后的手段:
ssh -vvv [email protected]
请注意,我总是只使用一个-v
.