Xming X Server 配置和使用





Xming X Server 配置和使用

Linux以及各种Unix like的操作系统现在都用基于X Window图形界面. 这个东西虽然块头比较大, 效率不太高, 导致Linux的3D游戏一直没什么动静, 但是, 它接口良好, 扩展性和可移植性都很好, 最重要的是具有网络透明性, 所以我们就可以很方便的远程启动Linux的图形程序. 下面说的就是在Windows下远程运行Linux图形界面的方法. 
http://www.360doc.com/content/17/1206/09/50543965_710389042.shtml
服务器端:编辑/etc/ssh/sshd_config中的以下内容
启用AllowTcpForwarding
启用X11Forwarding
将X11DisplayOffset设定为10.
启用X11UseLocalhost
客户机端:编辑/etc/ssh/ssh_config中的以下内容


1. 原理

Linux/Unix的X Window具有网络透明性. X Window系统里有一个统一的Server来负责各个程序与显示器/键盘和鼠标等输入输出设备的交互, 每个有GUI的应用程序都通过网络协议与Server进行交互. 所以对于任何一个应用程序, 本地运行和远程运行的差别仅仅是X Server的地址不同, 别的没有差别. 所以在Windows运行一个X Server, 就可以很方便的远程运行有GUI的Linux应用了. 同时, OpenSSH具有X转发功能, 可以将Linux主机的X程序通过SSH的管道转发给客户端. 于是通过PuTTY或SecureCRT连接到主机, 再将接收到的由主机转发来的X程序的交互交给在本地Windows系统下运行的X Server来管理和显示, 原则上说, 这就可以实现远程使用Linux的GUI程序. 
主机上需要的配置(默认即是): 
# vi /etc/ssh/sshd_config
取消这一行的注释, 如果没有这一行则手动添加之: 
X11Forwrding yes
这样配置的作用就是允许SSH的X转发. 其实本质上说, 这样做是有一定安全风险的, SSH并不能绝对的保证你数据的安全性, 不过一般情况下这也够了. 

2. 软件介绍和下载

需要在本地Windows上运行一个X Server. 选择有很多, Cygwin下的X Server恐怕是最著名的, 但是为了这么一个小小的事情去安装一个Cygwin似乎有些夸张; 除了Cygwin, 还有两个著名的商业软件可以选用, Xwin32和Xmanager, 感觉很流畅很好用, 不过虽然Xmanager可以试用, 但是终究还是商业软件; 还有一个选择, 就是这里要讲的, 开源软件Xming. Xming是一个配置简单而功能强大的开源X Server, 可以运行在M$的XP/2003/Vista操作系统下. 

介绍:  http://www.straightrunning.com/XmingNotes/
下载:  http://sourceforge.net/project/showfiles.php?group_id=156984
Xming 6.9.0.31 用OpenGL展示界面
Xming-fonts 7.4.0.3 标准X字体,部分传统的X应用的显示也需要这些字体 
Xming-mesa 6.9.0.31 用更慢的Mesa展示界面, 有时X转发会更好
Xming-portable-PuTTY 7.3.0.26 不写注册表的putty, 也可用传统的putty或secureCRT等提供X界面转发ssh程序
Xming-tools-and-clients 6.9.0.28 提供一些X应用专用的工具
XLaunch_zh.zip 如果不习惯使用Xming自带的英文版XLaunch, 可下载中文版的,下载地址 http://www.straightrunning.com/code/XLaunch_zh.zip

3. Xming安装和运行

双击Xming-6-9-0-31-setup.exe安装Xming, 第一次运行时使用开始菜单里面的XLaunch来启动, 产生一个初始的配置文件. 对于简单的使用来说, 不需要任何特殊的配置, 一切使用默认即可. 需要记住的是下图中标示出的"Display number"中的数字, 此处使用默认的0. 


最后一步中的Save configuration可以把这个设置保存为一个文件, 以后每次用这个设置只需运行该文件, 而不用每次都重新配置. 启动完成后, 在托盘区会出现一个"X"形状的图标, 这表示Xming已经在运行了, 将鼠标悬停上去, 能看到当前使用的"Display number". 

4. PuTTY对X转发的配置

在Session页面的Host name和port里填好putty的服务器地址和端口. 
在Data页面的Auto-login username里填好登录用户名. 
在SSH页面的Preffered SSH protocal version里设置优先SSH版本是2. 
最重要的一步, 在X11页面选择Enable X11 forwarding, X display location填上localhost:0, 下面的协议选择MIT-Magic-Cookie-1. 


然后连接登录远程主机, 看上去一切正常的样子. 试着运行一下 emacs & 图形界面就出来了, 只是看不到文字, 全是些方块. 
看看终端的输出信息: 
$ emacs &
Warning: Cannot convert string "-*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-*" to type FontStruct
Warning: Cannot convert string "-*-helvetica-medium-r-*--*-120-*-*-*-*-iso8859-1" to type FontStruct
原来是Xming没有相应的字体. 下面安装Xming-fonts 7.4.0.3

5. Xming-fonts的安装

双击Xming-fonts-7-4-0-3-setup.exe安装Xming-fonts, 安装路径为默认的C:\Program Files\Xming, 则安装字体之后的字体路径就是C:\Program Files\Xming\fonts. 这样安装字体后, 运行 emacs & 字体能正常显示了. 再来试试, 这下子emacs就正常多了.


6. SecureCRT对X转发的配置

在Session Options - Port Forwarding - Remote/X11 里选上"Forward X11 packets", 如下:


然后连接登录远程主机, 看上去一切正常的样子. 试着运行一下 emacs & 图形界面就出来了. 

7. 小小的Tips

用防火墙阻止Xming访问网络. 因为这样的一个X Server本质是不安全的, 而且并不需要它联网, 因为你只是在本机使用而已. 
感受: Xming总体来说还是不如Xmanager, 运行的流畅程度还是有不小的差距, 尤其是鼠标的移动, 感觉一顿一顿的, 纵然是在局域网内, 情况也没有好特别多. 

--End--

你可能感兴趣的:(X11)