Xterms über x-sitzungen hinweg „trennen“ und „neu anfügen“?


14

Gibt es eine Möglichkeit, ein xterm (oder ein anderes Fenster) zu speichern / zu trennen und es in einer anderen X-Sitzung auf demselben Computer erneut zu öffnen / zu laden / erneut zuzuordnen?

Was ich versuche zu erreichen, ist, laufende xterms zwischen zwei VNC-Sitzungen zu "verschieben", die auf einer Maschine laufen.

Nein, ich suche keinen Bildschirm :)

Ich möchte keinen Bildschirm verwenden, da ich dann für jedes xterm eine separate Bildschirmsitzung verwenden muss. Die Verwendung mehrerer Registerkarten auf dem Bildschirm funktioniert in meinem Fall nicht einwandfrei, da ich mehrere Begriffe gleichzeitig betrachten muss - nicht zwischen den Registerkarten wechseln.

NX ist eine weitere Option, die aufgetaucht ist, für die Installation von s / w sind jedoch Berechtigungen auf dem Server erforderlich. Ich suche nach einer Lösung mit X oder einer Option in einem der Fenstermanager direkt. fvwm / xfce / gnome wäre gut, aber auch andere WMs mit dieser Funktion sind willkommen.

Antworten:


8

Ich weiß, dass dieser Beitrag alt ist, aber ...

http://xpra.org/ Xpra ist 'Bildschirm für X'

... verrückt, wie viele Leute geantwortet zu haben schienen, ohne Ihre Frage tatsächlich zu lesen. Mit Xpra können Sie nicht nur Anwendungen auf jedem Computer von einem Bildschirm auf einen anderen verschieben, sondern auch die Verbindung zwischen den Apps und einem realen Bildschirm trennen und später erneut herstellen.


Ich bin gerade auf xpra aufmerksam geworden und habe mich an diese Frage erinnert. Ich dachte, ich würde nach all der Zeit eine anständige Antwort bekommen. Na ja, hab eine Gegenstimme.
Greg

4

Nicht ganz das, wonach Sie gefragt haben, aber der Bildschirm kann tun, was Sie wollen.

Diese Freigabe erfolgt auf der Shell-Ebene und nicht auf der X-Window-Ebene. Sie können also zwei xterms (auf verschiedenen Xservern, sofern diese sich auf derselben Box befinden) ausführen, screen -xdie dieselben sh-Sitzungen anzeigen .

Dies würde für nicht-terminale Dinge nicht funktionieren.

EDIT: xpra ist wohl was du willst.


1
Danke, ich bin mir des Bildschirms bewusst, aber es ist nicht das, wonach ich suche.
Abhinav

1
Mit screen können Sie tatsächlich verschiedene xterms mit verschiedenen Terminals haben. Verwenden Sie einfach screen -x und schalten Sie jedes xterm auf einen eigenen Bildschirm um. Ein xterm kann Bildschirm 1, ein anderer Bildschirm 2 usw. haben. Dies könnte auch alles per Skript erfolgen ... "xterm -e Bildschirm -x -p 1 &" usw.
BAUM

+1 für Bildschirm. Sie sagten: "Ich möchte keinen Bildschirm verwenden, da ich dann für jedes xterm eine separate Bildschirmsitzung verwenden muss." Sie können jedoch dieselbe Bildschirmsitzung für alle Ihre xterms verwenden (mit screen -x können Sie as erneut anfügen TREE sagte), und jedes xterm kann auf das gleiche Bildschirmfenster (wenn es das ist, was Sie wollen) oder ein anderes Bildschirmfenster in jedem xterm (wenn es das ist, was Sie wollen, es ist nicht klar aus Ihrer ursprünglichen Frage) schauen.
James Polley

Wenn Sie screen nicht verwenden möchten, verwenden Sie tmux.
Valbaca

2

Sie können screen innerhalb eines xterms verwenden. Mit diesem Programm können Sie Terminalsitzungen anhängen und trennen. Sie würden also ein xterm starten, den Bildschirm innerhalb des xterm starten und das xterm wie gewohnt verwenden. Um die Sitzung zu verschieben, trennen Sie sich von der Sitzung auf dem Bildschirm und beenden das xterm. Starten Sie ein anderes xterm und verbinden Sie es erneut mit der vorhandenen Bildschirmsitzung.

Wenn Sie dies mit einem beliebigen X-Programm tun möchten, können Sie NX verwenden . Es funktioniert wie Bildschirm, indem Sie in der Lage sind, einen X-Server zu trennen / zu verbinden. Es versteht auch das X11-Protokoll und kann daher X über langsame Netzwerke sehr gut beschleunigen.


Vielen Dank für den Hinweis auf NX, aber ich habe keine Berechtigung, s / w auf den Servern zu installieren. Ist in einem der Fenstermanager etwas eingebaut oder X selbst, das verwendet werden kann?
Abhinav

2

CryoPID war früher in der Lage, GTK + -Anwendungen (wie das Gnome-Terminal) zwischen X-Servern zu verschieben. Es ist schon eine Weile nicht mehr gewartet worden, so dass es im Moment vielleicht nicht funktioniert, aber einige Leute haben es aufgegriffen und wieder angefangen daran zu arbeiten.


1

Wie ausgeliefert? Nein. Früher gab es eine "xmovex" -Anwendung, die manchmal das tat, was Sie fragten, aber sie war nicht sehr beliebt und funktionierte nicht sehr gut.

Es gibt verschiedene Möglichkeiten, sich dem zu nähern, was Sie möchten:

  • Führen Sie den Desktop in einer VNC-Sitzung aus und stellen Sie von überall aus eine Verbindung dazu her.
  • Geben Sie Ihren Desktop über x11vnc frei.
  • schau in nx und freenx.

Ich habe bereits / run / zwei VNC-Sitzungen. Ich muss, wenn möglich, xterms zwischen ihnen verschieben.
Abhinav

1

Nein. Out of the Box X verfügt nicht über diese Funktion. Wenn Sie dies tun möchten, verwenden Sie am besten XVNC , einen x-Server, der in einen virtuellen VNC-Frame-Puffer gerendert wird. Anschließend können Sie mit einem VNC-Client eine Verbindung zu Ihrer X-Sitzung herstellen.



0

Wenn Sie sich nur für die Befehlszeilensitzung innerhalb von xterm interessieren, verwenden Sie screen


0

Ich frage mich, ob Sie für den Export Display Handling suchen .


Soweit ich weiß, wird beim Exportieren der Anzeige das Fenster auf einer bestimmten Anzeige angezeigt. Ich möchte die Anzeige ändern, während der erzeugte Prozess ausgeführt wird.
Abhinav,
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.