Gemeinsame Nutzung eines X-Servers (Sitzung) auf mehreren Computern

21

Ich habe 2 Computer (beide laufen unter Linux) und ich nutze derzeit Synergie, um sie zu nutzen. Das ist großartig, aber jetzt frage ich mich, ob es eine Möglichkeit gibt (ist es möglich, daran zu arbeiten, versucht und gescheitert, definitiv nicht möglich), nicht nur eine Maus / Tastatur / Zwischenablage zwischen den Computern zu teilen, sondern sie auch zu teilen eine X-Sitzung? Was ich denke, ist in der Lage zu sein, X-Fenster zwischen Monitoren zu ziehen.

Mir ist klar, dass dies äußerst nicht trivial ist und ich weiß genug über Linux (wenn auch nicht über xserver), dass ich diese Idee gerne weiterverfolgen würde, auch wenn es nichts gibt, das dies für Sie erledigt.

Außerdem muss ich nicht in der Lage sein, nur "das zu installieren und es funktioniert". Ich bin völlig bereit (und wäre überrascht, wenn es nicht erforderlich wäre), benutzerdefinierte Kernals zu installieren oder Partitionen zwischen Maschinen zu mounten, oder was auch immer es braucht. Da ich davon ausgehe, dass auf beiden Computern dieselbe Instanz des xorg-Servers ausgeführt werden muss.

Falmarri
quelle
Der normale Weg ist: Sie starten x auf Maschine A, öffnen xterm, ssh Maschine B, starten dort die gewünschten Anwendungen, die dann auf Maschine B ausgeführt werden sollen. Diese werden vom xserver von Maschine A angezeigt. Können Sie genauer erklären, warum dies für Sie nicht ausreicht und was Sie stattdessen erreichen möchten?
Fschmitt
Weil das absolut nicht das ist, was ich will. Ich möchte machineA und machineB haben und Eclipse auf machineA starten und dann das Eclipse-Fenster auf machineB ziehen.
Falmarri
Grundsätzlich möchte ich Synergieeffekte, mit denen Sie X-Fenster auch zwischen Monitoren / Computern ziehen können
Falmarri
Dies ist eine interessante Frage, da ich nicht sicher bin, was einfacher / möglich wäre: (a) das Problem des "Ziehens von Fenstern zwischen Monitoren auf zwei verschiedenen Computern auf ein Minimum" zu lösen oder (b) einen Linux-Cluster zu erstellen, der sich teilen konnte Ressourcen wie Grafikkarten.
Steven D
Das ist im Grunde das, was ich auch gedacht habe. Ich weiß wirklich nicht genug über X, um irgendeine Art von qualitativ hochwertiger Forschung zu betreiben, aber es scheint, als wäre es mit Xinerama möglich?
Falmarri,

Antworten:

9

Sie könnten sich mit xpra befassen - es ist nicht ganz so reibungslos wie beschrieben (kein Ziehen zwischen X-Servern), aber es gibt Ihnen die Möglichkeit, ein Programm auf einem Computer zu starten und es später zu trennen und auf einem anderen Computer erneut anzuhängen. (Betrachten Sie es als Bildschirm für GUI-Anwendungen.)

Eine engere Integration ist schwierig, da der Prozess immer noch an den Computer gebunden ist, auf dem Sie das Programm starten, und die Prozessmigration ein wirklich schweres Problem darstellt.

p-statisch
quelle
Vielen Dank! Ich habe seit Jahren nach einer solchen Anwendung gesucht. Mit der Weiterentwicklung eines Poliermittels könnte dies wirklich etwas werden.
ATC
5

Sie können einen Proxy-X-Server wie DMX oder XmetaX verwenden , bei dem es sich um einen einzelnen X-Server handelt, zu dem Clients eine Verbindung herstellen können, der jedoch "zeichnet", indem die Bilder an mehrere zugrunde liegende X-Server gesendet werden, die auf der Hardware ausgeführt werden. Das Verschieben eines Fensters vom Bildschirm eines Computers auf einen Bildschirm eines anderen ändert lediglich, welchen X-Server der Proxy zum Zeichnen auffordert, und migriert das Programm nicht, um es auf einem anderen Server auszuführen.

alanc
quelle
1
XmetaX war eine Neuigkeit für mich.
lkraav
Gibt es eine Alternative zu DMX und XmetaX?
Mariusz
4

Thread ist alt .. aber das ist für zukünftige Referenz.

Winswitch (basierend auf xpra)

https://winswitch.org/downloads/

Window Switch ist ein Tool, mit dem Sie laufende Anwendungen auf anderen Computern als dem anzeigen können, auf dem Sie sie gestartet haben. Nachdem eine Anwendung über einen Winswitch-Server gestartet wurde, kann sie bei Bedarf auf anderen Computern angezeigt werden, auf denen der Winswitch-Client ausgeführt wird.

Insbesondere läuft es unter Linux, Windows und Mac OS X. Sie können beispielsweise eine Mac OS X-Anwendung auf einem Linux-Desktop installieren.

oder x2go (es ist wie das Teilen einer Remote-Sitzung)

http://wiki.x2go.org/doku.php/start

zfs
quelle
Willkommen bei Unix & Linux Stack Exchange! Können Sie vielleicht beide Tools etwas genauer erläutern, sodass die Benutzer nicht zuerst klicken müssen? Nur-Link-Antworten werden hier nicht so gut angenommen.
Bernhard
Ich habe ausgearbeitet. Winswitch ist ein seltenes Juwel.
chx
0

Es ist jedoch nicht wirklich das, was Sie wollten. Wenn Sie jedoch Computer 1 mit 2 Monitoren starten und Remmina in Computer 2 umwandeln, können Sie das Remmina-Fenster so erweitern, dass es beide Monitore abdeckt, aber Sie würden nicht 1 Desktop freigeben. Ich habe einen beschissenen Laptop und einen mächtigen Turm. Ich habe nichts außer dem Netzwerk an den Tower angeschlossen. Dann starte ich mit dem Laptop seine Sachen auf dem Laptop-Monitor und starte remmina (zum Turm) auf dem anderen Monitor. Es sind 2 Desktops, aber ich kann Maus und Tastatur zwischen ihnen. Was Dateien angeht, muss ich einen FTP-Server auf dem Tower ausführen und Dateien, die ich per FTP darauf verschieben muss, ich bin mir sicher, dass es einen besseren Weg gibt, aber das funktioniert für mich.

Dave
quelle