在X个会话中“分离”和“重新附加” xterm?


14

有没有一种方法可以保存/分离一个xterm(或另一个窗口),并在同一台计算机上的另一个X会话上重新打开/加载/重新附加它?

我想要实现的是在机器上运行的两个VNC会话之间“移动”运行xterm。

不,我不是在寻找屏幕:)

我不想使用屏幕,因为那样的话,我将需要为每个xterm使用单独的屏幕会话。在屏幕上使用多个选项卡不适用于我的情况,因为我需要一次查看多个xterm-请勿在选项卡之间切换。

NX是出现的另一个选项,但是它需要服务器上的特权才能安装软件。我正在寻找使用X的某种解决方案,或者直接在其中一个窗口管理器中的某个选项。fvwm / xfce / gnome会很好,但是也欢迎具有此功能的其他WM。

Answers:


8

我知道这篇文章很旧,但是...

http://xpra.org/ Xpra是“ X屏幕”

...疯狂的多少人似乎没有真正阅读您的问题就回答了。Xpra不仅可以让您将应用程序从任何显示器上的任何一台显示器移动到另一台机器上,还可以完全关闭应用程序与任何实际显示器的连接,然后再重新连接。


我刚意识到xpra,并想起了这个问题。一直以来我都以为我会得到一个体面的答案。哦,祝您投票愉快。
格雷格2014年

4

不是您所要的,而是屏幕可能会满足您的要求。

这是在shell级别而不是X窗口级别共享的,因此您可以有两个xterm(在不同的Xserver上,只要它们在同一个盒子中)正在运行screen -x,它们将显示相同的sh会话。

这不适用于非终端的事情。

编辑:xpra可能是您想要的。


1
谢谢,我知道屏幕,但这不是我想要的。
Abhinav

1
使用screen,您实际上可以在不同的终端上使用不同的xterm。只需使用screen -x并将每个xterm切换到它自己的屏幕即可。一个xterm可以具有屏幕1,另一个屏幕2,等等。这也都可以编写脚本...“ xterm -e屏幕-x -p 1&”等
TREE

屏幕+1。您说过“我不想使用screen,因为那样的话,我将需要为每个xterm使用单独的screen会话。”-但是您可以与所有xterm共享相同的screen会话(使用screen -x重新连接,如下所示) TREE表示),每个xterm可以看到相同的屏幕窗口(如果您要的是),或者每个xterm内的不同屏幕窗口(如果您要的是;您的原始问题尚不清楚)。
James Polley

如果您不想使用屏幕,请使用tmux。
2013年

2

您可以使用屏幕在xterm中。这是一个程序,允许您附加和分离终端会话。因此,您将启动一个xterm,在xterm内启动屏幕,然后正常使用xterm。要移动会话,您将与屏幕中的会话分离并退出xterm。在其他地方启动另一个xterm,然后重新连接到现有的屏幕会话。

如果要使用任何X程序执行此操作,则可以使用NX。它可以像屏幕一样工作,因为您可以分离/附加到X服务器。它还了解X11协议,因此在通过慢速网络加速X方面做得很好。


感谢您指向NX的指针,但是我没有特权在服务器上安装软件。是否在任何窗口管理器中内置了任何东西,或者X本身可以使用?
Abhinav

2

CryoPID过去能够在X服务器之间移动GTK +应用程序(例如gnome-terminal)。它已经有一段时间没有维护了,因此目前可能无法正常工作,但是有些人将其拾起并重新开始使用它。


1

如发货?否。过去曾经有一个“ xmovex”应用程序有时可以满足您的要求,但是它并不是很受欢迎,并且运行得并不很好。

有两种方法可以接近您想要的东西:

  • 在vnc会话中运行桌面,然后从任何地方连接到该桌面;
  • 通过x11vnc共享您的桌面;
  • 研究nx和freenx。

我已经/ run /两个vnc会话。如果可能,我需要在它们之间移动xterms。
Abhinav

1

否。X的包装中没有此功能。如果要执行此操作,最好的方法是使用XVNC,它是渲染到VNC虚拟帧缓冲区的x服务器。然后,您可以使用VNC客户端连接到X会话。



0

如果您只关心xterm内部的命令行会话,请使用屏幕


0

我想知道您是否正在寻找导出显示处理。


据我了解,导出显示将在特定显示上生成窗口。我想在生成的进程正在运行时更改显示。
Abhinav
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.