Quando você executa ssh -X remotehost
e obtém DISPLAY=localhost:10
apresentado ao host remoto. ssh
escuta essa porta e encaminha o tráfego de volta ao sistema de chamada, usando seu valor original de DISPLAY
para determinar o endereço do servidor.
É provável que no seu sistema local você tenha DISPLAY=:0
. Ou se você não tiver, é como isso está sendo padronizado. Isso instrui o sistema local a usar o soquete do domínio UNIX para se comunicar com a exibição. Infelizmente, Xming
no Windows não configurou esse soquete de domínio UNIX, então o encaminhamento ssh
X11 falha com esse tipo de erro:
$ export DISPLAY=:0
$ ssh -X remotehost xlogo
connect /tmp/.X11-unix/X0: No such file or directory
Error: Can't open display: localhost:10.0
A correção - pelo menos no que diz respeito a Xming
- é bastante simples. Modifique a variável DISPLAY
para fazer referência a um soquete TCP de escuta em vez de um soquete de domínio UNIX.
$ export DISPLAY=localhost:0
$ ssh -X remotehost xlogo
Você pode ter que adaptar sua configuração Xming
para escutar na porta TCP local 6000. Aqui está como inicio Xming
:
Xming.exe :0 -clipboard -multiwindow
E aqui há evidências para confirmar que Xming
está escutando na porta tcp / 6000:
$ netstat -na | grep ':6000 .*LISTEN'
TCP 0.0.0.0:6000 0.0.0.0:0 LISTENING