Compartir un servidor X (sesión) entre computadoras

21

Tengo 2 computadoras (ambas ejecutan Linux) y actualmente estoy usando la sinergia para usarlas. Esto es genial, pero ahora me pregunto, ¿hay alguna forma (¿es posible? ¿Se está trabajando? ¿Se intentó y falló? ¿Definitivamente no es posible?) No solo compartir un mouse / teclado / portapapeles entre las computadoras, sino compartir una sesión de X? Lo que estoy pensando es poder arrastrar X ventanas entre monitores.

Me doy cuenta de que esto es extremadamente trivial y sé lo suficiente sobre Linux (aunque no sobre xserver) que me gustaría seguir esta idea, incluso si no hay nada que haga esto por usted.

Además, no necesito poder simplemente "instalar esto y funciona". Estoy completamente dispuesto (y me sorprendería si no fuera necesario) instalar kernals personalizados, o montar particiones entre máquinas, o lo que sea necesario. Como supongo que requeriría la misma instancia del servidor xorg que se ejecuta en ambas máquinas.

Falmarri
fuente
La forma normal es: Usted inicia x en la máquina A, abre xterm, ssh máquina B, inicia allí las aplicaciones que desea que luego se ejecutan en el bit máquina B se muestran en el servidor x de la máquina A. ¿Podría explicar con más detalle por qué esto no es suficiente para usted y qué quiere lograr en su lugar?
fschmitt
Porque eso no se parece en nada a lo que quiero. Quiero tener machineA y machineB, y comenzar eclipse en machineA y luego arrastrar la ventana de eclipse a machineB.
Falmarri
Básicamente, lo que quiero es una sinergia que también te permita arrastrar ventanas X entre monitores / computadoras
Falmarri
Esta es una pregunta interesante porque no estoy seguro de cuál sería más fácil / posible: (a) resolver mínimamente el "problema de arrastrar ventanas entre monitores en dos computadoras diferentes" o (b) crear una especie de clúster de Linux que pudiera compartir recursos como tarjetas de video.
Steven D
Eso es básicamente lo que estaba pensando también. Realmente no sé lo suficiente sobre X para hacer algún tipo de investigación de alta calidad, pero parece que podría ser posible con xinerama.
Falmarri

Respuestas:

9

Puede analizar xpra : no es tan sencillo como lo describe (sin arrastrar entre servidores X), pero le dará la posibilidad de iniciar un programa en una máquina y luego separarlo y volver a conectarlo en otra máquina. (Piense en ello como una pantalla para aplicaciones GUI).

Es difícil lograr una integración más estrecha que eso, porque el proceso todavía está vinculado a la máquina en la que inicia el programa, y ​​la migración del proceso es un problema realmente difícil.

p-static
fuente
¡Gracias! He estado buscando una aplicación de este tipo durante años. Con un mayor desarrollo y pulido, esto realmente podría ser algo.
ATC
5

Puede usar un servidor proxy X como DMX o XmetaX que es un único servidor X para que los clientes se conecten, pero que "dibuja" enviando las imágenes a múltiples servidores X subyacentes que se ejecutan en el hardware. Mover una ventana desde la pantalla de una computadora a una pantalla en otra simplemente cambiaría el servidor X que el proxy está pidiendo que dibuje, no migrará el programa para ejecutarlo en otro servidor.

alanc
fuente
1
XmetaX fue una novedad para mí.
lkraav
¿Hay alguna alternativa a DMX y XmetaX?
Mariusz
4

El hilo es viejo ... pero esto es para referencia futura.

Winswitch (basado en xpra)

https://winswitch.org/downloads/

Window Switch es una herramienta que le permite mostrar aplicaciones en ejecución en otras computadoras que no sean en las que las inicia. Una vez que se ha iniciado una aplicación a través de un servidor Winswitch, se puede mostrar en otras máquinas que ejecutan el cliente Winswitch, según sea necesario.

Cabe destacar que se ejecuta en Linux, Windows y Mac OS X. Por ejemplo, puede colocar una aplicación Mac OS X en un escritorio Linux.

o x2go (es como compartir una sesión remota)

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

zfs
fuente
¡Bienvenido a Unix y Linux Stack Exchange! ¿Puede tal vez elaborar un poco más sobre ambas herramientas, de modo que las personas no tengan que hacer clic primero? Las respuestas de solo enlace no son tan bien aceptadas aquí.
Bernhard
He elaborado. Winswitch es una gema rara.
chx
0

No es realmente lo que quería por decir, sin embargo, si enciende la computadora 1 con 2 monitores, y remmina en la computadora 2, entonces podría expandir la ventana de remmina para cubrir ambos monitores, pero no estaría compartiendo 1 escritorio. Lo que hago es tener un portátil horrible y una torre poderosa. No tengo nada conectado a la torre, excepto la red. Luego, con la computadora portátil, ejecuto sus cosas en el monitor de la computadora portátil y ejecuto remmina (a la torre) en el otro monitor. Son 2 escritorios, pero puedo usar el mouse y el teclado entre ellos. En cuanto a los archivos, tengo que ejecutar un servidor ftp en la torre y para mover los archivos tengo que ftp, estoy seguro de que hay una mejor manera, pero esto funciona para mí.

Dave
fuente