X11转发:错误的文件号错误?

时间:2011-10-29 19:00:39

标签: linux ssh cygwin x11

我的XWin服务器在我的本地计算机上运行(Windows 7)。当我打开一个cygwin shell并输入emacs时,emacs的图形显示会按预期出现 现在我尝试在我的本地计算机上显示远程应用程序。在cygwin中,我输入:

ssh -X root@.....

(我也尝试了 ssh -Y root @ ... ,结果相同。)我使用密码登录,然后收到这个有趣的消息:

/usr/bin/xauth:  creating new authority file /root/.Xauthority

然后我尝试打开xeyes。这就是我期望在我的本地机器上弹出一个窗口,其中有一个跟随鼠标光标的眼睛。相反,我得到一些神秘的错误信息:

root@debian:~# xeyes
connect /tmp/.X11-unix/X0: Bad file number
Error: Can't open display: localhost:10.0

这是我在Linux上的故障排除功能的范围:

root@debian:~# echo $DISPLAY
localhost:10.0

我对Linux很新。如何让远程服务器了解我的本地XWin服务器?看起来它应该很简单,因为我已经通过ssh建立了连接。

更新
所以我猜cygwin有这个“功能”,如果你把DISPLAY设置为:0,它意味着不同于localhost:0。根据建议将DISPLAY设置为127.0.0.1:0或localhost:0将解决问题。

2 个答案:

答案 0 :(得分:2)

你在Cygwin之外使用XWin,这可能会导致问题。尝试设置DISPLAY = 127.0.0.1:0,如下所示:

http://cygwin.com/ml/cygwin-xfree/2002-10/msg00065.html

在“使用Cygwin的OpenSSH和XWin-32”下

答案 1 :(得分:1)

我认为此处有2条错误消息。第一个是因为SSH客户端根本无法连接到本地计算机上的X显示器(/tmp/.X11-unix/X0表示:0)。这导致服务器端的第二个错误。如果你在本地运行cygwin xeyes会发生什么?