无法使用ssh在多台远程计算机上使用gedit
在设置了我的5台远程机器中的最后一台之后,我决定通过连接到每台机器并打开gedit来测试网络运行良好。
令我沮丧的是,当我试图在第二台机器上打开gedit时,我受到了欢迎:
** (gedit:1862): WARNING **; Could not connect: Connection refused ** (gedit:1862): WARNING **; Could not connect to session bus
关闭gedit没有帮助,但是当我关闭与第一台远程机器的ssh连接时,我能够在第二台上打开gedit。 我决定检查这是否是所有X程序的问题,但我能够在多个远程计算机上打开xeyes。
我的问题是,为什么在第一个ssh会话关闭之前,在一台机器上远程打开gedit阻止我在另一台机器上打开它? 有没有办法解决这个问题或解决方法? 我不需要同时打开多个gedits,但我最不希望能够在我可以在另一台机器上打开它之前关闭其中一台机器的连接。
我的ssh_config设置为’ForwardX11’和’ForwardX11Trusted’都设置为yes,以防这是相关的。
更新:我决定尝试更多的程序,并发现虽然我可以在多台机器上通过ssh打开nautilus,但在打开之前我会收到一些连接被拒绝的警告。
远程机器上的export $(dbus-launch)
为我解决了这个问题。
这是您在测试gedit的PC /笔记本电脑上充当X显示管理器(或X服务器)的问题。 那么,您使用的是哪种操作系统和X服务器软件?
通常,在本地PC上显示远程X应用程序的过程包括:
- 本地PC上的X服务器,配置为授权远程连接
- SSH隧道到远程系统
- 设置环境变量DISPLAY,指向本地PC(通过名称或IP地址)
如果您在Windows中, Xming可以作为X服务器使用来自ssh.com的putty或ssh客户端。它将允许您管理本地X显示,并授权远程应用程序显示在您的本地系统上。
1)使用命令行文本编辑器
ssh通过终端进入远程机器并使用nano
或vi
打开文本文件并进行编辑。
我发现nano更适合新手,部分原因是它直接在终端窗口显示各种操作的组合键。
使用nano: nano filename.txt
或sudo nano filename.txt
打开sudo nano filename.txt
(如果需要root权限)
2)在本地计算机上使用nautilus / gedit
打开nautilus文件浏览器窗口,然后从顶部面板的菜单中选择“连接到服务器”。
输入服务器信息(使用ssh://或sftp://进行ssh连接)。
连接后,您可以使用ctrl + d为该位置添加书签。 然后在gedit中双击要编辑的文件,然后从那里开始。
一个缺点:除非您以root身份进行ssh,否则使用此方法打开需要root权限的文件就不那么直接了。 如果你安装了nautilus-open-terminal
,你可以做的一件事是右键单击文件所在的nautilus窗口并选择“在远程终端中打开”,然后使用sudo nano filename.txt
,如上所示。