Sono seduto in una macchina IP privata (locale) e voglio installare netbeans in un'altra macchina IP pubblica remota (remota). Il computer locale esegue Ubuntu e il computer remoto esegue CentOS.
Ho scaricato il programma di installazione di netbeans nel computer remoto e l'ho cambiato in uno eseguibile.
Ora, in remoto, quando eseguo il comando,
# ./netbeans-8.1-linux.sh
Ricevo un messaggio di errore,
Non è stata impostata alcuna variabile DISPLAY X11, ma questo programma ha eseguito un'operazione che lo richiede.
Per occuparmene, in remoto, corro,
# export DISPLAY=:0
In locale, corro,
$ xhost +
e rieseguire il programma di installazione in remoto attivando il flag dettagliato,
./netbeans-8.1-linux.sh --verbose
Questo dà il messaggio di errore,
Impossibile connettersi al server di finestre X11 utilizzando ': 0' come valore della variabile DISPLAY.
(Ho provato altre varianti come 0.0
).
Come rivela qualche ricerca sulla rete, la mia unica opzione rimasta è, in remoto, emettere il comando,
# export DISPLAY=my.private.ip.address:0
Questo dovrebbe fallire e in realtà fallire, dal momento che ciò implica l'accesso a una macchina IP privata da una macchina IP reale.
Qui è dove sto affrontando un posto di blocco e ho bisogno del tuo aiuto.
MODIFICARE
Utilizzo ssh -X
e ssh -Y
errore del messaggio,
Richiesta di inoltro X11 non riuscita sul canale 0
Ho effettuato il check- /etc/ssh/sshd_config
in remoto ed
X11Forwarding yes
è già lì.
MODIFICA 2
Uscita di ssh -v -X user@remote.real.ip.address echo Hello world | grep -C 10 "X11 forwarding request failed"
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: exec
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: Sending environment.
debug1: Sending env LC_PAPER = en_US.UTF-8
debug1: Sending env LC_ADDRESS = en_US.UTF-8
debug1: Sending env LC_MONETARY = en_US.UTF-8
debug1: Sending env LC_NUMERIC = en_US.UTF-8
debug1: Sending env LC_TELEPHONE = en_US.UTF-8
debug1: Sending env LC_IDENTIFICATION = en_US.UTF-8
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending env LC_MEASUREMENT = en_US.UTF-8
debug1: Sending env LC_TIME = en_US.UTF-8
debug1: Sending env LC_NAME = en_US.UTF-8
debug1: Sending command: echo Hello world
debug1: Remote: No xauth program; cannot forward with spoofing.
X11 forwarding request failed on channel 0
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
debug1: channel 0: free: client-session, nchannels 1
debug1: fd 1 clearing O_NONBLOCK
Transferred: sent 3136, received 2800 bytes, in 0.3 seconds
Bytes per second: sent 9839.6, received 8785.3
debug1: Exit status 0
xauth
manchi qualche estremità del tubo SSH (non sono sicuro di quale). Controlla per assicurarti che sia disponibile nel $ PATH predefinito su entrambi i sistemi, per essere sicuro.
xauth
mancava in remoto. Installato. Come posso renderlo utile?
ssh -X
o ssh -Y
?
ssh -v -X any-other-options remote-server echo Hello world | grep -C 10 "X11 forwarding request failed"
al contesto.