在同一区域中的两个EC2实例之间传输文件

ksb*_*ksb 25 scp amazon-ec2 amazon-web-services ubuntu-14.04

我有两个运行Ubuntu 14.04的EC2实例,我需要弄清楚如何将文件从一个传输到另一个.我阅读了亚马逊的常见问题解答,并说如果我使用私有IP,我可以这样做,而不会产生任何额外费用,但我不知道如何使用它传输文件.

现在我使用scp协议来做到这一点 -

scp -i ~/Path-To-Key-File/AAA.gem /path/file  ec2-user@<Elastic IP>:/path/file
Run Code Online (Sandbox Code Playgroud)

我尝试用私有IP替换弹性IP,但它不起作用.我在这里做错了吗?

ksb*_*ksb 36

实际上,我想通了......我只需要用私有IP替换弹性IP并正确配置安全组以允许实例进行通信!

从机器A转移到机器B.

我在机器A上运行此代码

scp -i ~/Path-To-Key-File/AAA.pem /path/file  ec2-user@<Private IP of Machine B>:/path/file
Run Code Online (Sandbox Code Playgroud)

对于安全组,我必须通过私有IP(来自机器B)允许SSH协议!

  • 您能否解释一下如何实际配置安全组?如果没有这个解释,答案就不会太有帮助...... (3认同)
  • @BenMuller 转到您的 ec2 实例的安全组配置文件。单击“编辑入站规则”。从下拉列表中选择“ssh”。然后在“源”中输入安全组的名称,然后单击自动完成弹出窗口。这应该允许该安全组内的所有 ec2 实例之间进行传输 - 它对我来说是这样! (2认同)

Tap*_*nda 14

假设您的两个实例都是EC2 linux实例.

假设您要将文件从第二个实例(ec2-2)传输到第一个实例(ec2-1),该命令应该在ec2-1中运行:

scp -i  /Path-To-Key-File-for-ec2-2/key.pem  ec2-user@Elastic-IP-of-ec2-2:/path/filename your/local-path-on-ec2-1/filename
Run Code Online (Sandbox Code Playgroud)

你可以在这里找到相应的讨论

希望这有帮助!!