使用与原始窗口相同的SSH会话打开另一个终端窗口


42

有没有办法用打开的SSH会话的另一个实例打开终端窗口(或选项卡)?

编辑:我有一个到服务器的远程ssh会话的终端窗口。我想打开一个连接到相同远程ssh会话的新选项卡。

使用“ 文件”->“新建”选项卡,我可以得到另一个选项卡,但是必须打开到远程服务器的另一个ssh会话。


如果您使用ssh-copy-id和本地SSH配置,则连接到yourwebserver.company.net就像“ ssh web”一样,甚至不需要进行身份验证。
davidbaumann

@davidbaumann评论太简洁了。您能详细说明一下吗?什么是“ ssh网站”?怎样才能使用与该会话相同的会话来打开新的终端窗口?
TulainsCórdova2015年

这不是一个相同的会话,但是通过SSH连接将非常方便。您将不需要任何其他技巧。
davidbaumann

@davidbaumann,相同的会话表示相同的用户(如果您执行su-someuser),相同的环境变量(如果您源自src文件),相同的工作目录,相同的历史记录等。无需输入密码即可进行连接很好,但不会这样。剩下的都做。
图兰斯·科尔多瓦

Answers:


14

使用以下方法连接到远程服务器:

ssh -X [remote-host]      

现在运行:

gnome-terminal &

终端将出现在您的本地计算机上。在此终端上,您可以根据需要运行任意数量的选项卡或终端窗口。他们都将使用相同的ssh连接并连接到远程计算机。


远程主机是Debian,并且没有gnome-terminal。Debian中的终端应用程序的名称是什么?
图兰斯·科尔多瓦2014年

1
@ user1598390在我的安装中(Version 7 - wheezy),默认终端应用程序是gnome-terminal。还有其他终端应用程序安装。他们是xtermlxtermuxterm。我相信大多数发行版中最常见的就是xterm。您可以使用命令行获取终端应用列表cd /usr/bin;ls *term*
LD詹姆斯

1
我尝试过,但对我不起作用。
图兰斯·科尔多瓦2014年

执行时收到的错误消息是什么cd /usr/bin;ls *term*?换句话说,您执行的CLI是什么,错误消息是什么?
LD詹姆斯

错误是在执行xterm&-> [1] 26953 postgres@serverxxx:/usr/bin$ X11 connection rejected because of wrong authentication. xterm: Xt error: Can't open display: localhost:10.0即使我xhost +在本地计算机上运行。甚至当我这样做的时候ssh -X
TulainsCórdova2014年

36

也许这可以帮助: screen

默认情况下,它未在Ubuntu上安装,但在存储库中提供。

这非常有用:连接ssh到远程主机并键入screen以进入screen会话。

开始无论耗时你喜欢的工作,然后按Ctrl+ A其次Ctrl+ C创建屏幕会话的新窗口。

这将产生一个新的shell,您可以在其中执行所需的操作。使用同一命令创建更多窗口。

要在两个窗口之间快速切换,请再次使用Ctrl+,A再按Ctrl+ A。如您所见,Ctrl+ A将屏幕置于命令模式。

Ctrl+ A Ctrl+ D将脱离屏幕会话。然后,您可以断开与主机的连接,稍后再登录并用于screen -dr恢复会话。

要转到特定screen窗口,请输入Ctrl+,A然后输入数字。

关闭所有活动窗口(或退出其中的外壳)后,屏幕将退出。

我是从SSH和SFTP会话获得的

编辑-

tmux是屏幕的替代品。 http://www.sitepoint.com/tmux-a-simple-start/


不需要在远程主机中安装“屏幕”吗?
图兰斯·科尔多瓦2014年

我想是的。
aaditya1234 2014年

我必须连接到许多生产服务器:Solaris服务器(新版本以及旧版本),Debian服务器(几个版本)和RedHat服务器(几个版本)。毫无疑问,所有这些都必须安装新软件。
图兰斯·科尔多瓦2014年

嗯,这是一位朋友告诉我的有关他如何管理多台计算机安装的信息:bjoernvold.com/forum/viewtopic.php?
f=

1
当我使用屏幕时,我不能上下滚动,而我可以在普通命令行中上下滚动(执行完后我会得到一个ssh user@machine)。
ComputerScientist

0

我之前已经这样做:在服务器上启动gnome-terminal。Ctrl + Z然后在原始终端窗口中输入bg。

我通常使用ssh -X -C,因此您可能必须这样做,但是我不确定。另外,它将使用服务器的设置而不是计算机上的设置,这有时很不方便。


-2

是的,在终端(菜单)中,单击文件->新建选项卡

在终端中打开新标签页

还是您要其他东西?


也许我还不够清楚。我有一个终端窗口,其中有到另一个服务器的远程ssh会话。我想打开一个连接到相同远程ssh会话的新选项卡。查看问题中的编辑。
图兰斯·科尔多瓦

好的..忘记您的问题。将搜索答案,因为我还不知道。
aaditya1234

Windows的某些专有终端可以做到这一点。但是我倾向于使用Ubuntu的终端。
图兰斯·科尔多瓦
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.