我想要在远程Amazon EC2 Linux实例上编辑文件。目前,我只是使用ssh和nano进行编辑,但我真的需要一个图形化的文本编辑器。我有两个问题:
- 当我通过ssh登录时,必须使用sudo来编辑这些服务器文件。
- 我只能使用亚马逊给我的密钥进行登录。例如: ssh -i Andrew.pem ec2-user@55.55.44.33
请帮忙!我不挑剔,只要能使用任何图形化文本编辑器,因为使用nano太麻烦了。
我想要在远程Amazon EC2 Linux实例上编辑文件。目前,我只是使用ssh和nano进行编辑,但我真的需要一个图形化的文本编辑器。我有两个问题:
请帮忙!我不挑剔,只要能使用任何图形化文本编辑器,因为使用nano太麻烦了。
我在AWS上找到了一个奇怪的解决方法,用Jupyter Notebook作为基于GUI的文本编辑器。如果您的实例上已安装Anaconda,则可以按照以下步骤操作:
ssh -i <您的私钥位置> <用户名>@<公共DNS>
登录到您的实例jupyter notebook --no-browser --port=8888
在您的实例上启动jupyter notebookssh -i <您的私钥位置> -L 8212:localhost:8888 <用户名>@<公共DNS>
登录到您的jupyter notebooklocalhost:8212
上打开jupyter notebook使用jupyter notebook环境,您不仅可以启动和运行Ipython笔记本,还可以创建和编辑任何文件,就像文本编辑器一样。
它一直通过sshConsole插件支持sftp读写文件。
我现在在我的AWS EC2实例上使用由AWS提供的密钥对。
最后,在“生产”环境中编辑属于root的文件不是一个好主意。
在AWS用户的主文件夹中进行开发工作,以便您完全控制源文件。然后,使用符号链接到实际服务器的文件树,以便您可以将其用于自己的测试。nginx和apache有很多限制谁可以查看您的开发网站的控件。
编辑/更新:
NppFtp插件为Notepad ++提供与AWS的sftp访问。 我刚刚使用他们在AWS登录时提供的.pem文件进行了测试。
针对这个问题,我建议以下几种方法:
学习并使用emacs;在文本模式编辑器中,它非常强大。
在服务器上安装您喜欢的图形化编辑器,并使用X转发,'ssh -X server.com'。这将允许您远程启动编辑器,但在本地显示。
在我看来最优雅的方法是,使用sshfs(https://github.com/libfuse/sshfs)将远程目录挂载到本地,这样您就可以直接使用您喜欢的文本编辑器处理文件。
netrw
模块(http://www.vim.org/scripts/script.php?script_id=1075)来满足这个需求。使用gvim版本,你就有了图形化编辑器。 - Charles Duffy