Jeg har problemer med dette og vet ikke hvorfor. Det er mange relaterte spørsmål, men ingen av dem hjalp meg.
Jeg har to virtuelle maskiner:
CentOS 7 med GNOME 192.168.1.53
Mint 17.1 Rebbeca med XFCE 192.168.1.54
Jeg vet at skjermen som standard skal eksporteres, som:
#While I am Logged in on the desktop on the MINT: user@mint:~$ xhost + #I am SSHing to the Centos from the MINT user@mint:~$ ssh -XY [email protected] #At the CentOS I export the display [root@cent ~]$ export DISPLAY=192.168.1.54:0.0 [root@cent ~]$ echo $DISPLAY 192.168.1.54:0.0 #Trying to start a simple program but I get an error message instead: [root@cent ~]$ xclock Error: Can"t open display: 192.168.1.54:0.0
Hva gjør jeg galt?
Jeg prøvde forslagene på en rekke fora, men jeg får fortsatt feilmeldingen .Jeg prøvde også å eksportere skjermen fra Mint til Centos (den motsatte måten) og jeg får fortsatt den samme feilen, men denne gangen på Mint.
Kan det være at feilen er fordi ett system har XFCE og den andre GNOME?
Jeg tenker at det kan være noen standard sikkerhetsinnstillinger i kraft på en / begge distribusjonene som jeg ikke er klar over.
Jeg prøvde også å redigere /etc/gdm/custom.conf
på CentOS som forklart her:
http://www.softpanorama.org/Xwindows/Troubleshooting/can_not_open_display.shtml
Svar
Du prøver å lage en X-tunnel gjennom SSH og overstyrer den ved å spesifisere en IP-adresse som omgår SSH-tunnelen. Dette fungerer ikke. Når SSH tunneler, håndterer SSH overføring av data mellom de lokale og eksterne IP-adressene ved å åpne en port på localhost på hver maskin den snakker til. Du kan ikke spesifisere IP-adressen til begge datamaskinene.
Du må eksportere skjermen som er tunnelert gjennom SSH, og det betyr export DISPLAY=localhost:x.y
, som burde ha blitt gjort for deg automatisk når du kobler til ved hjelp av ssh -X.
Kommentarer
Svar
Prøver du å bruke SSH for videresending, eller ikke. Det virker som om du prøver å blande + matche to metoder her. En for videresending med SSH, og den brukes ikke til ssh.
Hvis du vil videresende via SSH, er alt du trenger å gjøre på klienten din ssh -X remotehost
. Du trenger ikke å gjøre noe i økten på serveren når du har koblet deg til. Ingen xhost eller eksport kreves.
En ting jeg lurer på er om SSH-serveren din er riktig konfigurert for X11-videresending. Dette er et alternativ som ikke alltid er på som standard. Se innstillingen sshd_config X11Forwarding
.
ssh -XY [email protected]
så erecho $DISPLAY
utgangenlocalhost:10.0
som er en litt forvirrende ..export DISPLAY
var opprinnelig ment å brukes med telnet?export DISPLAY
ble opprettet, var det bare rlogin & telnet eksisterte, og ssh var fremdeles år i fremtiden.