Esegui un'app GUI sul computer remoto da SSH


10

Voglio eseguire un'applicazione GUI sul mio computer Ubuntu, ma dovrebbe essere avviata da uno script shell sul mio server Debian tramite SSH.

È possibile?


1
Sembra che ci sia un po 'di confusione su ciò che stai cercando di fare. Stai tentando di eseguire un programma GUI su un host remoto, ma hai la finestra GUI visualizzata sull'host locale? Oppure stai provando a eseguire un'applicazione localmente (e la finestra viene visualizzata localmente), ma è stata attivata da remoto?
pkaeding

@pkaeding bene se ci sono due interpretazioni, entrambe utili, allora puoi rispondere per entrambe. Lo sai? Qualcuno ha già commentato chiedendo una di quelle interpretazioni "Alexander ha scritto" È passato un po 'di tempo, ma forse ti ricordi ancora se sei stato in grado di avviare TeamViewer da ssh. Gradirei se potessi condividere maggiori dettagli su come lo hai fatto. Grazie. "<--- Quindi, se sapessi e rispondessi per entrambi, potrebbe aver aiutato lui e gli altri.
barlop

Risposte:


4

Qualcosa del genere dovrebbe funzionare:

#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'

2

Questo funziona per me una volta che ho scritto:

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

0

Sì, questo è possibile. Dovrai semplicemente inoltrare il traffico X attraverso la connessione SSH. Ad esempio, connettiti in questo modo:

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

Quindi, basta avviare l'applicazione dal prompt di SSH. La finestra della GUI apparirà sulla tua casella debian (a cui sei connesso localmente). Tutta l'elaborazione verrà eseguita dal computer remoto (quello di Ubuntu).

Nota che questo funzionerà solo se hai un server X Window in esecuzione sul tuo computer locale. Questo sarà sicuramente il caso se hai un'installazione desktop linux / unix e puoi anche installare server X su Mac OS e Windows, ma non sono installati di default.


Voleva che il server eseguisse un programma GUI sul desktop, ovvero il server si connettesse al desktop ed eseguisse il programma.
OneOfOne,

0

Grazie per le tue risposte Nel frattempo ho provato un altro paio di cose e una di quelle cose era quella di fare una connessione SSH al computer Ubuntu ed eseguire uno script su quella macchina.

Su una delle prime righe di quello script ho definito il display EXPORT. Il giocatore adesso sa quale display dovrebbe usare ..

Grazie ancora.


Ciao. È passato un po 'di tempo, ma forse ti ricordi ancora se sei stato in grado di avviare TeamViewer da SSH. Gradirei se potessi condividere maggiori dettagli su come lo hai fatto. Grazie.
Alexander Chertov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.