我使用 SSH 连接到我的 Ubuntu实例。使用SSH我可以管理实例上的文件和文件夹,但是如何将文件和文件夹从本地计算机上传到实例?
是否可以在不使用SFTP客户端的情况下从SSH会话中执行此操作?
答案 0 :(得分:10)
您可以尝试 kitten 实用程序,它是 boto3 的包装器。为此,您可以轻松地在 EC2 服务器或多台服务器上上传/下载文件和运行命令。
kitten put -i ~/.ssh/key.pem cat.jpg /tmp [SERVER NAME][SERVER IP]
其中服务器名称是例如 ubuntu 或 ec2-user 等
这会将 cat.jpg 文件上传到服务器的 /tmp 目录
答案 1 :(得分:8)
如前所述,我使用的是WinSCP,它将我作为“ec2-user”登录 - 然后确保通过SSH调整该用户的权限。例如:
chown -R ec2-user /path/to/files
(首先以root用户身份进行身份验证。)
您需要通过WinSCP编辑哪些文件夹或文件,允许对它们进行权限(否则,在尝试上传/编辑WinSCP中的文件时,您将收到权限被拒绝错误。)
答案 2 :(得分:5)
您无法使用ssh复制文件。你可以使用scp / sftp。
如果你在linux上,请使用scp;如果你在Windows上,请使用winscp答案 3 :(得分:5)
您可以使用:
scp -i yourkeypair.pem source destination
答案 4 :(得分:4)
只是为scp命令添加更多细节(包含在OSx和大多数linux / unix中):
scp -i myssh.pem local_file username@200.200.200.200:/home/username
显然 - 将pem文件替换为用于ssh访问的文件。显然取代"用户名"和" 200.200.200 .."使用有效的设置值。
答案 5 :(得分:0)
您还可以安装和设置FTP服务器,它允许您设置用户和目录以供他们上传。话虽如此,我已经赞成上述内容,因为scp / sftp是理想的方法。
答案 6 :(得分:0)
最简单的方法是从浏览器安装webmin并使用文件管理器(java插件)。
//转到主文件夹
cd ~
//下载最新版本
wget http://prdownloads.sourceforge.net/webadmin/webmin-1.660-1.noarch.rpm
//安装
sudo rpm -U webmin-1.660-1.noarch.rpm
//更改root用户的默认密码 passwd的
最后,在安全组中打开端口10000
然后,登录
https://server_name:10000
用户:root密码:what_you_set_before
答案 7 :(得分:0)
这很好
scp -r -i myssh.pem /local/directory remote_username@10.10.0.2:/remote/directory
-r递归