xdmcp配置

  XDMCP(X Display Manager Control Protocol)X显示监控协议。

  一些简单的远程X想必大家 都比较熟悉,比如用ssh登录远端主机, 然后运行xterm &,就可以在本地X里出现一个xterm, windows下可以登录远端服务器,用(bash)export

  DISPLAY=xxx.xxx.xx.xx:0.0来把X送到本地运行的X上。

  基于XDMCP的远程X是非常简单易用而且体现Unix/Linux长处的一个网络应用,它是把整个X 桌面输出到远端.比如通过XDMCP你可以把一台淘汰了的486转换成能运行大型科学计算软件的X终端。

  这在Windows里要用WinNT/2K的TerminalServer或第三方软件才能实现,在Linux里却是自带的。

  介绍一下对一般的Linux工作站安装做一些简单修改,使她成为远程X服务器。

  一, 服务器端:

  1.修改X字体服务器脚本: /etc/rc.d/init.d/xfs , 改变端口 ,

  daemon xfs -droppriv -daemon -port -1

  改成:

  daemon xfs -droppriv -daemon -port 7100

  2.修改X访问权限 : /etc/X11/xdm/Xaccess, 修改以下(这样会让所有访问客户获得权限):

  #* # any host can get a login window

  去掉#:

  * # any host can get a login window

  3.修改 /etc/X11/gdm/gdm.conf. 激活 XDMCP( X Display Manager Control Protocol,X显示监控协议)

  这样能监听远端X请求 .

  改变:

  [xdmcp]

  Enable=0

  到:

  Enable=1

  确定 "Port=177" 在最后一行.

  4.修改 /etc/inittab : (如果你的Linux已经设为X登录,略去此项)

  id:3:initdefault:

  到:

  id:5:initdefault:

  5.修改 /etc/X11/XServers ,加入下面几行取得4个xdm 登录(X Display Manager)或者 gdm(GNOME X display manager) 进程,可以允许四个不同用户登录,当然你可以允许更多

  用户 .

  :0 A local /usr/X11R6/bin/X :0

  :1 B local /usr/X11R6/bin/X :1

  :2 C local /usr/X11R6/bin/X :2

  :3 D local /usr/X11R6/bin/X :3

  6.找到 /etc/X11/xdm/Xsetup_0 ,chmod 755 使该文件非root也可执行.

  7.修改 /etc/X11/XF86Config ,改:

  FontPath "unix:-1"

  到:

  FontPath "unix:7100"

  8.加以下行到/etc/inittab末尾:

  x:5:respawn:/usr/bin/gdm

  好了,到此Server端告一段落,restart后如果出现下列错误:

  _ FontTransSocketUNIXConnect: Can't connect: errno = 111

  failed to set dafault font path 'unix:-1'

  Fatal server error:

  could not open default font 'fixed'

  则在/etc/X11/XF86Config加入以下行:

  FontPath "/usr/lib/X11/fonts/75dpi/"

  FontPath "/usr/lib/X11/fonts/misc/"

  FontPath "/usr/lib/X11/fonts/CID"

  FontPath "/usr/lib/X11/fonts/Speedo"

  FontPath "/usr/lib/X11/fonts/100dpi"

  二, 客户端:

  Linux下的本地X Server通过网络XDMCP启动有三种方式:

  Direct query(直接询问),Broadcast(广播)和Indirect query(间接询问)三种.

  直接询问直接建立和服务器的通讯,广播则发播询问并和第一个回应建立通讯,

  间接询问是通过特定主机间接建立和X服务器的通讯.

  一般运行X在直接询问模式下只要简单键入:

  X -quiet -query the.host.address <--键入X服务器的IP或主机名

  就可以取得和在本地同样的X登录画面了.

发表回复