unix - x windows/X11 问题

Posted

技术标签:

【中文标题】unix - x windows/X11 问题【英文标题】:unix - x windows/X11 question 【发布时间】:2011-07-20 03:28:30 【问题描述】:

我有一个需要在我的 unix 终端上启动的 java GUI jar 文件。我的系统管理员说“X 已通过 ssh 启用”。但是当我输入 xterm 它说

xterm Xt error: Can't open display: xterm:  DISPLAY is not set

我做了一些阅读,它说我必须使用登录 $ssh -X mylogin@xyz

所以我的问题是: 1) 接下来我应该做什么...我再次输入 xterm 但窗口没有启动 2)假设我让它以某种方式工作。我如何启动我的 java GUI。 (我是否只需输入 jar 文件名)?

感谢大家的帮助。

【问题讨论】:

【参考方案1】:

我假设您从自己的计算机连接到运行 SSH 的某个服务器。首先,如果您还没有 X11 服务器,您需要在自己的机器上安装 X11 服务器。这里的术语令人困惑——如果您通过 SSH 连接到另一台计算机,您可能习惯于将自己的计算机视为客户端,将远程计算机视为服务器。但在 X11 的情况下,这些角色是相反的。

然后,您需要在自己的机器上启动 X11,并在其中启动 xterm然后从那个xterm,你可以运行ssh -X myserver.example.com,一旦登录到远程服务器,运行java -jar myapplication.jar,它应该可以工作了。

在您自己的机器上启动 X 服务器的具体机制因操作系统而异。在 Linux/FreeBSD/etc 上,您可能已经在运行一个。在 Mac 上,如果您已安装开发者工具,则 X11 在应用程序下可用。在 Windows 上,您需要类似 Xming

【讨论】:

我得到的消息是与 localhost:12.0 的 X 连接断开(显式终止或服务器关闭) 好的。 putty 没有内置 X 服务器(也不应该:))。所以你需要在你的 Windows 系统上设置一个 X 服务器,比如 Xming 或 Cygwin。 putty 确实有 X11 转发:the.earth.li/~sgtatham/putty/0.58/htmldoc/… 好的,我安装了 Cygwin 并使用启用 X11 的 putty 会话登录到我的 unix 集群。但我收到以下错误:X connection to localhost:11.0 broken (explicit kill or server shutdown).【参考方案2】:

转到您的 unix 终端并执行以下操作:

export DISPLAY=<ip_addr>:0

例如我会导出 DISPLAY=10.18.192.89:0。 ip 地址是您想要查看 GUI 的机器的 IP 地址,并且该机器应该运行 Xterm 客户端。

【讨论】:

根据我的经验,这在 SSH 下通常是不可行的。特别是,当防火墙出现时,它决不能保证 SSH-server/X11-client 将能够启动与 SSH-client/X11-server 的连接。更不用说它是不安全的。隧道通常是首选。

以上是关于unix - x windows/X11 问题的主要内容,如果未能解决你的问题,请参考以下文章

[转帖]一段关于Unix与 Linux的暗黑史

Linux&Unix子系统在这里下载哦!

vnc 连接不上,出现Warning: zhouziqi:1 is taken because of /tmp/.X11-unix/X1

已知n个正数:wi, 1<=i<=n, 和M。要求找出{wi }的所有子集使得子集内元素之和等于M。例如: n=4, (w1,w2,w3,w4)=(11,13,24,7),

oracle配置ODBC

朴素贝叶斯算法