在我的本地机器上,我运行:
ssh -X me@remotemachine.com
Run Code Online (Sandbox Code Playgroud)
(为了完整起见,我还使用 -Y 测试了以下所有内容,结果相同)。
正如预期的那样,这可以很好地访问 remotemachine.com,并且一切正常。但是,如果我然后尝试运行 xcalc,我会得到:
connect /tmp/.X11-unix/X0: No such file or directory
Error: Can't open display: localhost:10.0
Run Code Online (Sandbox Code Playgroud)
但,
$ ls -la /tmp/.X11-unix/
total 36
drwxrwxrwt 2 root root 4096 2012-11-23 09:29 .
drwxrwxrwt 8 root root 32768 2012-11-29 08:22 ..
srwxrwxrwx 1 root root 0 2012-11-23 09:29 X0
Run Code Online (Sandbox Code Playgroud)
所以不仅 /tmp/.X11-unix/X0 存在,它还有通用的 r/w/x 权限!
我以前使用过 x-forwarding 没有问题,虽然不是在一段时间......
服务器上的 uname -a 以供参考:
Linux machinename 2.6.32-25-generic #45-Ubuntu SMP Sat Oct 16 19:52:42 UTC 2010 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
现在在网上搜索了几个小时没有成功。其他人提到了同样的问题,但没有解决方案。
我们正在使用 Oracle Secure Global 桌面提供对 Solaris 桌面的远程访问。它将DISPLAY变量设置为unix:10.0。
它似乎工作得好像DISPLAY被设置为localhost:10.0. “unix”在这里是什么意思?
它是一种常见用法还是特定于 SGD 的东西?据我所知,通常DISPLAY是在表单中设置的[hostname or IP]:[screen]。