Problemas ao exportar o X11 ao usar o SSH do Ubuntu para Windows

1

Estou usando o terminal nativo do Ubuntu no Windows 10 e estou tentando exportar a exibição enquanto uso o SSH para me conectar a um servidor remoto. Eu tenho XMing instalado no PC com Windows, que funciona no Ubuntu local depois de usar export DISPLAY=:0 . No entanto, quando eu ssh e tentar abrir qualquer tela, recebo o erro abaixo depois de uma longa pausa:

** (gedit:9813): CRITICAL **: log.vala:104: Unable to connect to Zeitgeist: Could not connect: Connection refused

(gedit:18368): dconf-WARNING **: failed to commit changes to dconf: Could not connect: Connection refused

** (gedit:18368): CRITICAL **: Unable to connect to Zeitgeist's DataSourceRegistry: Could not connect: Connection refused

Alguém tem alguma ideia para corrigir isso?

Editar: A maneira como me conecto ao servidor remoto é ssh -X username@IP . O servidor está no Ubuntu 14.04 LTS, e se eu usar este comando de outro PC no Ubuntu, ele funcionará perfeitamente sem precisar do comando export DISPLAY=:0 .

No entanto, quando eu ssh usando o mesmo comando do terminal do subsistema do Windows 10, posso conectar-me, mas um dos dois problemas ocorre. Se eu não usar o comando export DISPLAY=:0 , mas apenas chame gedit , recebo os erros abaixo:

connect /tmp/.X11-unix/X0: No such file or directory
connect /tmp/.X11-unix/X0: No such file or directory

** (gedit:10254): WARNING **: Could not open X display
connect /tmp/.X11-unix/X0: No such file or directory
connect /tmp/.X11-unix/X0: No such file or directory

(gedit:10254): Gtk-WARNING **: cannot open display: localhost:25.0

Caso contrário, se eu usar o comando export display ccommand, recebo os erros da postagem original.

    
por Tom 05.10.2017 / 23:08

2 respostas

0

Eu tive o mesmo problema. A solução foi definir explicitamente a variável DISPLAY local como localhost:0 em vez de :0 .

Máquina local:

me@local:~$ echo $DISPLAY
:0
me@local:~$ export DISPLAY=localhost:0
me@local:~$ ssh -X [email protected]

Máquina remota:

me@remote:~$ echo $DISPLAY
me@remote:~$ remote:29.0
me@remote:~$ xeyes

(funciona)

O erro connect /tmp/.X11-unix/X0: No such file or directory certamente resulta de procurar na máquina local por um soquete que não está lá, já que fazer touch /tmp/.X11-unix/X0 antes da conexão altera o erro para connection refused , porque ele está lá, mas não é um soquete válido. O localhost:0 explícito parece permitir que ele encontre o soquete.

    
por 30.08.2018 / 15:47
0

Você pode usar apenas ssh -X , que definirá o var do DISPLAY no shell do host remoto.

    
por 06.10.2017 / 12:28