SCP无法从Linux EC2实例转到本地机器

时间:2014-08-12 04:57:01

标签: linux amazon-web-services ssh amazon-ec2 scp

我正在尝试将我的Amazon EC2实例中的文件存入我的Linux机器。我做了很多阅读,似乎没什么用。

我可以从我的Linux机器SSH进入我的实例(这就是我如何连接到它),甚至可以通过scp -i my-key-pair.pem SampleFile.txt ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com:~进入SCP。根据亚马逊在this链接的说明,为了SCP从实例到我的机器,我只需要简单地反转主机参数的顺序。"换句话说,这个:

scp -i my-key-pair.pem 
ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com:~/SampleFile.txt 
~/SampleFile2.txt

我已经用Google搜索了,甚至在这里读过一些类似的问题,包括this一个,但我没有运气。我不确定问题是什么。有一天,我跨越实例(即,从一个EC2实例到另一个实例)成功地安排了SCP,没有任何问题 - 至少据称需要更多的修补。

另一个困扰我的是,从实例到本地机器的SCP命令包括私钥(上面代码块上的my-key-pair.pem),以及我&#39 ; ve在实例上查找了一个.pem文件,但没有找到。我错过了什么吗?提前谢谢。

顺便说一句,我看到了通用" Permission denied(公钥)"错误。

4 个答案:

答案 0 :(得分:1)

此命令应该有效 首先通过ssh连接到Amazon EC2,

scp -i my-key-pair.pem <local file name on Amazon EC2> user_name@<linux_host_ip>:/<copy path>

前:

  

scp -i my-key-pair.pem SampleFile2.txt user_name @ linuxHostIp :/ home / userName / fileName.txt

答案 1 :(得分:1)

我发现了问题所在。我从实例而不是本地机器运行命令,这有点奇怪,因为当你从一个实例到另一个实例的SCP时,你从你正在复制的实例中运行SCP命令,但是哦。

答案 2 :(得分:1)

`scp -r user@your.server.example.com:/path/to/foo /home/user/Desktop/`   

- 使用上面的命令scp来自server..use -i key的文件夹 使用的密钥不是默认密码。

scp -r -i key.pem user@your.server.example.com:/path/to/foo /home/user/Desktop/

答案 3 :(得分:0)

您的计算机的IP是scp时的预期值,而不是路由器的预期值。

否则可能无法识别要复制到哪台计算机,并将所有数据复制到路由器后面的所有不需要的计算机

可能这就是它失败的原因。