Eu tenho um script, simplesmente para executar meu aplicativo gráfico (GUI), como abaixo.
#cat gui.sh
#!/bin/bash
./gui -display 127.0.0.1:0.0
Quando o executo da máquina local ( ./gui.sh
), ele funciona perfeitamente. Mas quando estou tentando executá-lo da máquina remota via ssh, recebi o seguinte erro.
[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]#
Não sei, qual protocolo está perguntando ou estou perdendo alguma coisa? Tentei diretamente iniciando o aplicativo, sem script [ ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui""
], mas o resultado é o mesmo. Eu tentei várias combinações como ssh -Y
, ssh -fY
e mais, mas o resultado é o mesmo!
Em segundo lugar, para minha aplicação, é necessário que, primeiro tenhamos que entrar no diretório em que o programa está localizado.
Alguma solução?
xhost +
dará acesso a qualquer pessoa para conectar-se ao seu monitor. Eu recomendariaxhost +local:[hostname or ip]
Debian Jessie, adicione também:
fonte
xhost +
Corrigido o meu problema (no lado do cliente)/tmp/xauth-1000-_0
mas depois de iniciar duas sessões X adicionais, esse arquivo desapareceu - apenas a terceira permaneceu. Para corrigir o problema de todas as janelas, restaurei-o com:ln -s ~/.Xauthority /tmp/xauth-1000-_0
Fui atingido pelo mesmo problema, resolvi-o alterando a variável de ambiente DISPLAY de:
para
fonte