Gambas-it

Archivi (sola lettura) => Domande tecniche (Gambas 2) => Topic aperto da: El Berto - 16 Febbraio 2013, 12:05:47

Titolo: [Risolto] Lanciare applicazione grafica da remoto?
Inserito da: El Berto - 16 Febbraio 2013, 12:05:47
Ho provato a lanciare un'applicazione grafica da remoto (entro in ssh) ma mi appare questo messaggio:

Codice: [Seleziona]
(Telemetria3.gambas:2460): Gtk-WARNING **: cannot open display:

io non voglio che mi venga visualizzata la finestra dal mio client ssh, voglio solo che venga eseguita l'applicazione.
Come si può fare?
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: Ceskho - 16 Febbraio 2013, 15:58:46
Via ssh non è possibile lanciare applicazioni basate su X. Se hai la necessita devi necessariamente dialogare con un software da riga di comando.
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: milio - 16 Febbraio 2013, 17:28:54
Via ssh non è possibile lanciare applicazioni basate su X. Se hai la necessita devi necessariamente dialogare con un software da riga di comando.
???

@El Berto

Se vuoi solamente avviare un'applicazione che di fatto gira sul pc remoto e l'output video sul pc in locale devi avere sulla macchina remota un server X e utilizzare il seguente comando ssh per collegarti:

  ssh -X tuoutente@indirizzo-pcremoto

Se vuoi invece lanciare un'applicazione su pc remoto e visualizzare l'output video su pc remoto devi fare cosi':

Nel pc remoto ci deve essere una istanza di X attivata dall'utente con il quale ti colleghi con ssh

su pc locale dai:

  ssh -X tuoutente@indirizzo-pcremoto

dopo l'immissione della password e relativo collegamento su pc remoto dai:

  xhost +

in questo modo tutti gli utenti possono utilizzare il display X dell'utente (valido fino al termine della sessione di X)

  export DISPLAY=:0.0; path-tuoprogramma

Sullo schermo del remoto verra' eseguito il programma a video

Se invece tu non disponi di un server X su pc remoto, devi crearti l'applicazione senza utilizzare componenti grafici quali gb.gtk, gb.qt4 o gb.gui

ssh e' un programma potentissimo e non solo per fare, come in questo caso, il port forwarding del server X, ma anche per reindirizzare una qualsiasi porta su pc locale... se hai dubbi fammi sapere

 :ciao: :ciao:
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: El Berto - 18 Febbraio 2013, 11:43:29
Allora, nel mio programma c'è sia la finestra che si apre (interfaccia grafica), sia vengono eseguiti degli script (uscita a riga di comando).
Se lo lancio da macchina locale, ho una cosa del tipo:

Codice: [Seleziona]
root@pc-desktop:~$./SocketServer.gambas 
process not in use

e si apre la finestra e funziona tutto.

Se lo lancio entrando da terminale remoto, mi compare l'errore:
Codice: [Seleziona]
Gtk-WARNING **: cannot open display

A me non interessa vedere l'output, basta che venga lanciato il programma, quindi provando con:

Codice: [Seleziona]
ssh ------- ./SocketServer.gambas DISPLAY=:0

per funzionare, funziona.
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: milio - 18 Febbraio 2013, 16:46:59

A me non interessa vedere l'output, basta che venga lanciato il programma, quindi provando con:

Codice: [Seleziona]
ssh ------- ./SocketServer.gambas DISPLAY=:0

per funzionare, funziona.


Puoi spiegare che comando hai usato?  ???
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: El Berto - 18 Febbraio 2013, 16:51:27
Scusa, era un' "abbreviazione", il comando effettivo è:

Codice: [Seleziona]
ssh [i]utente[/i]@[i]host[/i] "DISPLAY=:0 nohup [i]nomescript[/i]"
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: milio - 18 Febbraio 2013, 16:54:12
pero' in questo modo devi avere una sessione di X avviata?
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: El Berto - 18 Febbraio 2013, 16:56:29
Cioe? Io ho solo avviato il PC (Ubuntu)..... in pratica mi parte già l'ambiente grafico con il desktop....
Titolo: Re: Lanciare applicazione grafica da remoto?
Inserito da: milio - 18 Febbraio 2013, 17:05:59
Ok capito...

 :)