0

我正在使用 Emacs 作为编辑器在 Windows 机器上开发 JSF Web 应用程序,但我更喜欢在 Linux 环境中使用 Emacs。在(有些遥远的)过去,使用远程 X 显示器来完成这个非常有用的编程辅助是不费吹灰之力的。Cygwin 有所帮助,但真正的远程 X 是首选解决方案。然而,在最近的 Fedora(和 Ubuntu)发行版中,remote X 是一个令人头疼的问题(Google remote X 或 XDMCP),你会看到现在有很多 GDM、XDM 和 KDM 的配置设置,更不用说 xhost 和防火墙了使远程 X 的配置比说服 Barry Kelley 这种类型的问题与真正的编程相关更困难。

现在,我使用 XFCE 环境和 KDM 作为我的显示管理器运行 Fedora 10。我关闭了防火墙,关闭了 selinux,启用了 XDMCP(在 /etc/kde/kdm/kdmrc 中),但是在使用 (Cywin) "$ export DISPLAY= myfedora10box:0.0; xclock”。当我远程显示到另一个运行 Cygwin/X 的 windows 框时,测试工作正常。所以问题显然是 Fedora 10 中的配置设置。

4

8 回答 8

2

便携式 Ubuntu将允许您直接在 Windows 中运行 Linux 环境,而无需任何凌乱的 X Windows 设置或必须设置虚拟机。如果您真正想做的只是运行 Emacs,这可能是最快的解决方案。

于 2009-04-16T04:02:49.263 回答
2

X 服务器通常配置为不接受 tcp 连接(“-nolisten tcp”),但另一种选择是使用 ssh 的 X11 转发机制。尝试运行

ssh -X myfedora10box xclock

你的cygwin机器,你应该让时钟运行。对于交互式使用,请使用ssh -X myfedora10box.

于 2009-04-16T07:39:46.123 回答
0
  • 您是否添加了允许 xdmcp 访问的主机/etc/X11/xdm/Xaccess
  • 我现在不在 xdm 的盒子上,但如果我没记错的话,应该还有一个可以包含相关配置的配置文件,看看/etc/X11/xdm/xdm-config

编辑:在这些配置更改偏离路线后,您可能需要重新启动 X!

于 2009-04-16T05:30:04.517 回答
0

您可能会发现 X 服务器会话正在使用“-nolisten tcp”选项启动,这意味着无法远程连接到桌面,因为它没有侦听任何网络端口。

当然,在我的 Ubuntu 机器上,这是默认配置。

于 2009-04-16T06:33:09.683 回答
0

“便携式 Ubuntu”的替代品是andLinux——我喜欢他们的桌面集成。

于 2009-04-16T14:57:45.830 回答
0

你试过'xhost'命令吗?从手册页:

xhost 程序用于在允许连接到 X 服务器的列表中添加和删除主机名或用户名。

在您的 Fedora 机器上,您可以输入“xhost +mywindowsbox”以允许 xclock 和 emacs 以及 windows 机器上的任何其他内容显示在 Fedora X 屏幕上。

但是,这只会让您在 Fedora 屏幕上编辑 Windows 文件的 Windows emacs。如果您希望在 Windows 文件上使用 Fedora emacs,您可能希望将 Windows 机器设置为共享其文件并在 Fedora 上使用 samba 以使其可由运行在 Fedora 机器上的 emacs 访问。

于 2009-04-17T15:04:32.830 回答
0

当我不幸使用 Windows 时,我通常只是使用 putty 或其他一些 ssh 客户端登录到终端,然后从终端(XMing 或其他一些 X 服务器)启动 X 应用程序。

但是如果你想要一个完整的 X 会话而不是仅仅启动单个应用程序,也许像 VNC 或 NX 这样的帧缓冲系统会更容易设置?

于 2009-04-18T23:05:50.090 回答
0

我收到的一些答案很有帮助,尤其是 Bryan Childs 的答案。有一次我确认“$ ps -ef | grep X”在 X 命令上显示了 -nolisten tcp 参数,从那里到 /etc 下的“-nolisten”的 grep 是不费吹灰之力的(Emacs 的 rgrep 是精确)我在 /etc/kde/kdm/kdmrc:457 中找到罪魁祸首的地方,其中指定了“ServerArgsLocal=-br -nolisten tcp”。

感谢所有回复的人。

-pmr

于 2009-04-26T19:45:22.647 回答