如何将文件和文件夹上传到AWS EC2实例?

Noo*_*one 18 amazon-ec2 amazon-web-services

我使用SSH连接到我的Ubuntu实例.使用SSH我可以管理实例上的文件和文件夹,但是如何将文件和文件夹从本地计算机上传到实例?

是否可以在不使用SFTP客户端的情况下从SSH会话进行操作?

Jim*_*Jim 10

您可以尝试小猫实用程序,它是 boto3 的包装器。为此,您可以轻松地在 EC2 服务器或多台服务器上上传/下载文件和运行命令。

kitten put -i ~/.ssh/key.pem cat.jpg /tmp [SERVER NAME][SERVER IP]
Run Code Online (Sandbox Code Playgroud)

其中服务器名称是例如 ubuntu 或 ec2-user 等。

这会将 cat.jpg 文件上传到服务器的 /tmp 目录


Mat*_*att 8

如前所述,我使用的是WinSCP,它将我作为"ec2-user"登录 - 然后确保通过SSH调整该用户的权限.例:

chown -R ec2-user /path/to/files
Run Code Online (Sandbox Code Playgroud)

(首先以root用户身份进行身份验证.)

无论您需要通过WinSCP编辑哪些文件夹或文件,都允许对它们进行权限(否则,在尝试上传/编辑WinSCP中的文件时,您将收到权限被拒绝错误).


小智 5

你不能使用ssh复制文件.你可以使用scp/sftp.

scp如果你在linux或winscp上,如果你在Windows上

  • 我发现[Filezilla](http://filezilla-project.org/)比WinSCP更快地将文件上传到我的EC2实例,如果这可能有帮助的话. (2认同)

Vih*_*rma 5

你可以用这个:

scp -i yourkeypair.pem source destination
Run Code Online (Sandbox Code Playgroud)


小智 5

只是向scp命令添加了一些细节(包括在OSx和大多数linux / unix中):

scp -i myssh.pem local_file username@200.200.200.200:/home/username
Run Code Online (Sandbox Code Playgroud)

显然-将pem文件替换为用于ssh访问的文件。显然,将“用户名”和“ 200.200.200 ..”替换为设置的有效值。