Tengo un script, simplemente para ejecutar mi aplicación gráfica (GUI), como se muestra a continuación.
#cat gui.sh
#!/bin/bash
./gui -display 127.0.0.1:0.0
Cuando lo ejecuto desde la máquina local ( ./gui.sh
) funciona perfectamente bien. Pero cuando intento ejecutarlo desde una máquina remota a través de ssh, recibí el siguiente error.
[root@localhost]# ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui.sh""
No protocol specified
gdm: cannot connect to X server 192.168.3.77:0.0
[root@localhost]#
No sé, ¿qué protocolo pregunta o me falta algo? Lo intenté directamente iniciando la aplicación, sin script [ ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui""
], pero el resultado es el mismo. He intentado varias combinaciones como ssh -Y
, ssh -fY
y más, ¡pero el resultado es el mismo!
En segundo lugar, para mi aplicación, hay una condición obligatoria de que primero tenemos que ir al directorio donde se encuentra el programa.
¿Alguna solución?
xhost +
dará acceso a cualquiera para conectarse a su pantalla. Yo recomendaríaxhost +local:[hostname or ip]