scp
我正在尝试使用以下命令将目录从云服务器下载到本地:
scp -i ./.ssh/mykey.pem -r -p [email protected]:/var/lib/mongodb 127.0.0.1:/var/lib/mongod
admin
当然是远程的,我需要输入密钥,而 127.0.0.1 是本地的。
但是我收到错误消息:
Host key verification failed.
lost connection
如果我尝试使用 ssh 连接到我的服务器,它确实有效。ssh -i ./.ssh/mykey.pem [email protected]
谁能指出我做错了什么?
答案1
要复制到本地服务器,您不需要127.0.0.1:
.只需这样就可以了:
scp -i ./.ssh/mykey.pem -r -p [email protected]:/var/lib/mongodb /var/lib/mongod
使用127.0.0.1:
, scp 与 127.0.0.1 处的服务器建立另一个 SSH 连接,并且就像在两个远程服务器之间进行复制一样。位于 127.0.0.1 的 SSH 服务器可能无法通过主机密钥验证。
答案2
从手册页来看,
scp [-346BCpqrv] [-c 密码] [-F ssh_config] [-i 身份文件] [-l 限制] [-o ssh_选项] [-P 端口] [-S 程序] [[
user@]host1
:]file1 ... [[user@]host2
:]文件2
因此,当您使用127.0.0.1
最后一部分时,scp
请将其识别为host2
.因此,然后将尝试根据身份文件( )使用 currentscp
登录主机并返回错误,可能是因为没有有关 的信息。所以只要遵循就可以正常工作,127.0.0.1
username
./.ssh/mykey.pem
host2
$scp -i ./.ssh/mykey.pem -r -p [email protected]:/var/lib/mongodb /var/lib/mongodb
或者
$cd /var/lib/mongodb
$scp -i ./.ssh/mykey.pem -r -p [email protected]:/var/lib/mongodb .