Ejecute una aplicación GUI en una computadora remota desde SSH

10

Quiero ejecutar una aplicación GUI en mi computadora Ubuntu, pero debería comenzar con un script de shell en mi servidor Debian a través de SSH.

es posible?

Patricio
fuente
1
Parece que hay una pequeña confusión sobre lo que estás tratando de hacer. ¿Está intentando ejecutar un programa GUI en un host remoto, pero aparece la ventana GUI en su host local? ¿O está intentando ejecutar una aplicación localmente (y la ventana aparece localmente), pero se ha activado de forma remota?
pkaeding
@pkaeding bien si hay dos interpretaciones, ambas útiles, entonces puedes responder por ambas. ¿Tú sabes? Ya alguien ha comentado sobre una de esas interpretaciones "Alexander escribió" Ha pasado un tiempo, pero quizás aún recuerdes si pudiste iniciar TeamViewer desde ssh. Le agradecería si pudiera compartir más detalles sobre cómo lo hizo. Gracias. "<--- Entonces, si supieras y respondieras por ambos, podría haberlo ayudado a él y a otros.
barlop

Respuestas:

4

Algo como esto debería funcionar:

#on your desktop 
xhost + #not secure, make sure your X isn't listening on any tcp ports.
echo 'export DISPLAY=:0; x-command-you-want &' > ~/run-command
chmod +x ~/run-command
#on your server
ssh user@desktop '~/run-command'
Uno de uno
fuente
2

Esto funciona para mí una vez que estoy en:

export DISPLAY=:0; nohup iceweasel &>/dev/null &
Dante Alighieri
fuente
0

Si, esto es posible. Solo necesitará reenviar el tráfico X a través de la conexión SSH. Por ejemplo, conéctese así:

debian-computer:$ ssh -X username@ubuntu-computer

Luego, simplemente inicie la aplicación desde el indicador SSH. La ventana de la GUI aparecerá en su casilla de Debian (en la que ha iniciado sesión localmente). Todo el procesamiento será realizado por la computadora remota (la ubuntu).

Tenga en cuenta que esto solo funcionará si tiene un servidor X window ejecutándose en su computadora local. Este será definitivamente el caso si tiene una instalación de escritorio de Linux / Unix, y también puede instalar servidores X en Mac OS y Windows, pero no están instalados de forma predeterminada.

pkaeding
fuente
Quería que el servidor ejecutara un programa GUI en el escritorio, es decir, que el servidor se conectara al escritorio y ejecutara el programa.
OneOfOne
0

Gracias por sus respuestas Mientras tanto, he intentado un par de cosas más y una de esas cosas fue hacer una conexión SSH a la computadora Ubuntu y ejecutar un script en esa máquina.

En una de las primeras líneas de ese script definí la pantalla EXPORT. El jugador sabe ahora qué pantalla debería usar.

Gracias de nuevo.

Patricio
fuente
Hola. Ha pasado un tiempo, pero tal vez aún recuerdes si pudiste iniciar TeamViewer desde ssh. Le agradecería si pudiera compartir más detalles sobre cómo lo hizo. Gracias.
Alexander Chertov el