Ho uno script, semplicemente per eseguire la mia applicazione grafica (GUI), come di seguito.
#cat gui.sh
#!/bin/bash
./gui -display 127.0.0.1:0.0
Quando lo eseguo dal computer locale ( ./gui.sh
) funziona perfettamente. Ma quando sto cercando di eseguirlo da una macchina remota tramite ssh, ho ricevuto il seguente errore.
[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]#
Non so quale protocollo sta chiedendo o mi sto perdendo qualcosa? Ho provato direttamente avviando l'applicazione, senza script [ ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui""
], ma il risultato è lo stesso. Ho provato varie combinazioni simili ssh -Y
, ssh -fY
e di più ma il risultato è lo stesso!
In secondo luogo per la mia applicazione, c'è una condizione indispensabile che, dobbiamo prima andare nella directory in cui si trova il programma.
Qualche soluzione?
xhost +
darà accesso a chiunque per connettersi al tuo display. Consigliereixhost +local:[hostname or ip]