配置xdm

news/2024/11/29 23:54:12/

1.1配置XDM--一种Linux的图形登录界面

  修改:
  通过在 /etc/x11/xdm/Xservers 文件中加入以下几行,可以得到四个 xdm

会话,由此可以允许四个不同用户登录。看上去好象所有精巧的素材设置只对最

后一个会话起作用。不过可能很容易修正这一点,也许我会在下一篇文章中提到


  :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
  
  -----------------------------------------------------------------

---------------
  
  资源
  什么是XDM? -- 一种图形化的登录界面
  我的配置
  结论
  
  -----------------------------------------------------------------

---------------
  
  资源
  
  Chris Carlson 在Linux公报中的文章。
  man xdm
  我以前写的文稿。 这些文稿写于1996年12月,那时我还是一个hacker(真

是一种很美妙的感觉)。我想那时侯Linux公报也刚开始发行。时间过的真快,

我本应当在那时侯就发表这篇文章的。
  
  -----------------------------------------------------------------

---------------
  
  什么是XDM?
  简而言之,xdm 只不过是一种图形化的登录界面。当你的计算机启动的时候

你可以让你的老板和朋友们记住你的计算机没有那种令人厌烦的字符控制台界面

。其实它就是让你的Linux看上去比他们原想的要“酷”一些。
  理论上说,虽然这是在Redhat 6.0的环境下配置的,但对于任何Linux的

distributio n,大多数配置文件都能正常工作。 当启动图形登录界面的时候,

Redhat 6.0 使用的是gdm,而不是xdm。虽然gdm看上去 要比xdm好的多,但我现

在还不能让gdm象我需要的方式运行。一旦我解决了一些问题,我 会再写一篇关

于gdm的简要文章。
  
  这里有一些需要注意的事项 ,
  
  如果你想要你的 xdm (或者 gdm) 在计算机启动的时候运行,你应该确保在

文件 /etc/inittab 中的这一行
  id:3:initdefault:
  为
  id:5:initdefault:
  请注意,无论你想做什么,都必须在你设置启动时运行 xdm之前,使你的

Xwindows 正常工作。如果 Xwindows 无法正常运行的话,你的xdm 也不会正常

运行,而且会引起许多问题。
  从文件/etc/inittab 底部的这一行,你可以清楚的看到RedHat 6.0 使用了

gdm 来代替xdm
  x:5:respawn:/etc/X11/prefdm -nodaemon
  因此把这一行改为,
  x:5:respawn:/usr/bin/X11/xdm -nodaemon
  我修改的所有文件都在 "/etc/X11/xdm" 目录下。
  
  -----------------------------------------------------------------

---------------
  
  我的配置文件
  我只对下列几个文件感兴趣,
  /etc/X11/xdm/Xsetup_0
  /etc/X11/xdm/Xresources
  /etc/X11/xdm/GiveConsole
  /etc/rc.d/rc.change_graphic
  /etc/rc.d/rc.local
  /etc/inittab <-- 这个文件在前面已经解释过了 。
  另外,图形文件位于 /etc/X11/xdm/graphics/ 目录下。
  我的目的是改变xdm使它具有一个xeyes,一个圣诞老人,一个钟,一个图片

以及选择 在登录前的背景色。登录后让圣诞老人死掉。酷吧?
  
  好吧,现在让我们一步一步的来做:
  
  拷贝我的 graphics perl script 到"/etc/rc.d/rc.change_graphic"。这

个文件改变了显示在屏幕上的图形。图像作为gif文件存储在

“/etc/x11/xdm/graphics”目录下。
  拷贝我的kill santa perl script 到 "/etc/X11/xdm/KillXsnow"。这个文

件杀死了圣诞老人,他慢慢地掉落桌面。
  拷贝我的 Xsetup script 到 "/etc/X11/xdm/Xsetup_0". 这个程序和图形

登录界面一起运行。
  拷贝我的 Xresources script 到 "/etc/X11/xdm/Xresources". 这个文件

设置了xdm的外观。
  拷贝我的 GiveConsole script到 "/etc/X11/xdm/GiveConsole". 这个文件

决定了在Xwindows移交给用户之前要执行的一些程序。
  把 这个命令 加到 "/etc/rc.d/rc.local" 文件中。以确保在启动的时候得

到我们定义的图像 。
  拷贝我的 gif 文件 到"/etc/X11/xdm/graphics/" 目录下,并且执行
  tar -C / -zxvf xdm.tgz
  这些就是我使用的一些图象。
  
  -----------------------------------------------------------------

---------------
  
  这里是配置文件的其余部分:
  
  -----------------------------------------------------------------

---------------
  
  Change graphics perl script
  位于 "/etc/rc.d/rc.change_graphic"。 在拷贝之后执行命令 "chmod 755

/etc/rc.d/rc.change_graphic"。
  #!/usr/bin/perl
  
  
  @Files = 〈/etc/X11/xdm/graphics/*.gif〉;
  
  
  #print @Files;
  
  
  $Length = @Files;
  
  $Seconds = `date +%S`;
  
  chomp $Second;
  
  $Frac = $Seconds/60;
  
  if (!($Frac > 0)) {$Frac=1}
  
  
  $Random = $Frac*$Length;
  
  ($Random,$Junk) = split(//./, $Random,2);
  
  
  if (($Random < 1) || ($Random > $Length -1)) {$Random = 1}
  
  $File = $Files[$Random];
  
  
  $Rand2 = rand $Length;
  
  ($Rand2,$Junk) = split(//./, $Rand2,2);
  
  
  $Random = $Random + $Rand2;
  
  if ($Random > $Length - 1) {$Random = $Random - $Length + 1;}
  
  
  #print "$Length $Random $File/n";
  
  
  if (-e "/etc/X11/xdm/xdm_front.gif") {system "rm

/etc/X11/xdm/xdm_front.gif"}
  
  
  if (@Files < 1)
  
  {
  
  ## Some sort of error messege should be here.
  
  }
  
  else
  
  {system "ln -s $File /etc/X11/xdm/xdm_front.gif";}
  
  -----------------------------------------------------------------

---------------
  
  Kill Santa perl script
  位于 "/etc/X11/xdm/KillXsnow"。拷贝后执行 命令 "chmod 755

/etc/X11/xdm/KillXsnow" 。
  #!/usr/bin/perl
  
  
  ### I had to add the -a option between RH 5.2 and 6.0
  
  @Temp = `cd /proc; grep -a ^/usr/X11R6/bin/xsnow /proc/[0-9]

*/cmdline`;
  
  
  if (@Temp > 0)
  
  {
  
  $Xsnow = shift @Temp;
  
  ($Junk,$ProcJunk,$No,$RestOfJunk) = split(?/?,$Xsnow);
  
  
  ## I am really paranoid that I want to kill the right pid
  
  if (($No > 0) && ($Xsnow =~ ?^/proc/

$No/cmdline:/usr/X11R6/bin/xsnow?))
  
  {
  
  # system "echo /"Killing pid $No for Xsnow./n/" > /tmp/1.txt/n";
  
  system "kill $No";
  
  }
  
  }
  
  -----------------------------------------------------------------

---------------
  
  Xsetup_0 script
  位于 "/etc/X11/xdm/Xsetup_0"。拷贝后执行命令" chmod 755

/etc/X11/xdm/Xsetup_0"。
  #!/bin/sh
  
  # $XConsortium: Xsetup_0,v 1.3 93/09/28 14:30:31 gildea Exp $
  
  /usr/X11R6/bin/xconsole -geometry 480x130-0-0 -daemon -notify -

verbose -fn fixed -exitOnFail
  
  #/usr/X11R6/bin/xbanner
  
  
  ### Santa and snowflakes
  
  ### On some installs, I am missing xsnow for some reason.
  
  /usr/X11R6/bin/xsnow -snowflakes 50 -santa 2 -unsmooth &
  
  
  ### Load the random image
  
  /usr/bin/X11/xloadimage -onroot -at 1,210

/etc/X11/xdm/xdm_front.gif -border brown &
  
  
  ### A clock would be nice to see
  
  /usr/X11R6/bin/xclock -digital -update 1 -fn -adobe-times-medium-

i-normal--34-240-100-100-p-168-iso8859-1 -geometry +410+1 &
  
  
  ### Let us turn on xeyes
  
  /usr/X11R6/bin/xeyes -geometry +410+100 &
  
  -----------------------------------------------------------------

---------------
  
  Xrsources file
  位于 "/etc/X11/xdm/Xresources"。拷贝后执行命令 “chmod 755

/etc/X11/xdm/Xresources" 。
  ! $XConsortium: Xresources /main/8 1996/11/11 09:24:46 swick $
  
  xlogin*login.translations: #override/
  
  CtrlR: abort-display()/n/
  
  F1: set-session-argument(failsafe) finish-field()/n/
  
  CtrlReturn: set-session-argument(failsafe) finish-field()/n/
  
  Return: set-session-argument() finish-field()
  
  xlogin*borderWidth: 3
  
  xlogin*geometry: 400x200+1+1
  
  xlogin*greeting: CLIENTHOST
  
  xlogin*namePrompt: login:/040
  
  xlogin*fail: Login incorrect
  
  #ifdef COLOR
  
  xlogin*greetColor: CadetBlue
  
  xlogin*failColor: red
  
  *Foreground: black
  
  *Background: #fffff0
  
  #else
  
  xlogin*Foreground: black
  
  xlogin*Background: white
  
  #endif
  
  XConsole.text.geometry: 480x130
  
  XConsole.verbose: true
  
  XConsole*iconic: true
  
  XConsole*font: fixed
  
  
  Chooser*geometry: 700x500+100+100
  
  Chooser*allowShellResize: false
  
  Chooser*viewport.forceBars: true
  
  Chooser*label.font: *-new century schoolbook-bold-i-normal-*-240-*
  
  Chooser*label.label: XDMCP Host Menu from CLIENTHOST
  
  Chooser*list.font: -*-*-medium-r-normal-*-*-230-*-*-c-*-iso8859-1
  
  Chooser*Command.font: *-new century schoolbook-bold-r-normal-*-

180-*
  
  
  -----------------------------------------------------------------

---------------
  
  GiveConsole file
  位于 "/etc/X11/xdm/GiveConsole".
  你所要做的就是把 "/etc/X11/xdm/KillXsnow & " 作为第一个命令加入文

件。 我的是这样的,
  
  #!/bin/sh
  
  # Assign ownership of the console to the invoking user
  
  # $XConsortium: GiveConsole,v 1.2 93/09/28 14:29:20 gildea Exp $
  
  
  # By convention, both xconsole and xterm -C check that the
  
  # console is owned by the invoking user and is readable before

attaching
  
  # the console output. This way a random user can invoke xterm -C

without
  
  # causing serious grief.
  
  
  /etc/rc.d/rc.change_graphic &
  
  /etc/X11/xdm/KillXsnow &
  
  
  chown $USER /dev/console
  
  /usr/X11R6/bin/sessreg -a -w "/var/log/wtmp" -u "/var/run/utmp" /
  
  -x "/etc/X11/xdm/Xservers" -l $DISPLAY -h "" $USER
  
  -----------------------------------------------------------------

---------------
  
  /etc/rc.d/rc.local file
  把下行命令加入文件 /etc/rc.d/rc.local 。
  /etc/rc.d/rc.change_graphic
  
  
  -----------------------------------------------------------------

---------------
  
  结论
  XDM 非常“酷”。这是一种老的实现方法。我推荐使用gdm或者其它什么。

我给 XDM 打 B- 。它缺乏一些我早就希望看到的gdm有的好的素材。
  下次我会解释 GDM 。 Gdm 有一种非常好的能力,可以让你选择你想要的工

作台环境 。在RedHat 6.0 下,当你登录时可以选择 KDE ,GNOME ,或者其它

的工作台环境,这 是非常“酷”的。全面的, 我给 gdm 打 B+ ,而且如果它

变的更好说明的化,可以打A 。我再次希望可以再八月刊上发表关于gdm的文章


  
  Mark works as a receptionist (shorts and tee--shirt) under Mike

Hunter at The Computer Underground and as a professional (suit and

tie) consultant at 800linux.com. In his spare time, he does volunteer

stuff, like writing these documents.

1.2
xmanager
Xmanager是一个简单易用的高性能的运行在Windows平台上的X Server软件。它

能把远端Unix/Linux的桌面无缝地带到你的Windows上,甚至当你的电脑是在内

网或防火墙后,你也能通过SSH协议安全的运行远端的X应用程序。特点包括: -

可通过Xcongfig工具设置多个Xmanager设置; -支持多用户的Windows终端环境

; -支持多个IP地址; -支持本地资源数据库; -通过热键转换键盘映射; -支

持多窗口下的Windows打印功能等。

SN:040101-110321-000320


1.3 解决Xmanager登陆界面乱码问题的方法
因为Xmanager使用的是自己的字体,HP_unix在登陆的时候默认使用的字体是

zh_CN.hp15CN,所以在登陆的时候会产生乱码。解决方法有两个:
第一、使用en_GB.roman8。因为xmanager这个字体与hpux的字体相同,所以使用

en_GB.roman8就不会产生乱码。
在/etc/dt/config/Xconfig中Dtlogin*language: en_GB.roman8即可;
第二、使用HP_UNIX的zh_CN.hp15CN字体。
1.在你的装有Xmanager的微机中新建文件夹:
mkdir c:/program fils/Xmanager1.3.8/font/hpux,
2.拷贝/usr/lib/X11/fonts/hp_chinese_s/75dpi/*pcf至此目录。
3.用Xmanager的mkfntdir生成font.dir文件。
cd c:/program files/Xmanager1.3.8/font/hpux
c:/profram files/Xmanager1.3.8/Mkfntdir
4.将此字体目录添加到Xmanager的字体目录中去。(在Xconfig中的font

directory中添加新生成的目录,并删除其他目录,但是要留下hp目录)。

1.4

随着互联网的高速发展以及Linux企业应用的成熟,Linux被广泛应用于服务器领域,如何实现Linux的远程管理成为网络管理员的首要任务。我们经常见到的几种最为常用的windows下远程管理L

<script language="JavaScript1.1" src="http://ad.ccw.com.cn/adshow.asp?positionID=30&js=1&innerJs=1" type="text/javascript"></script>
inux服务器的方法,基本上都是利用SecureCRT,F-Secure SSH 抑或是PUTTY等客户端工具通过ssh服务来实现Windows下管理Linux服务器的,这些客户端工具几乎不需要什么配置,使用简单,但是它们都无法启动窗口服务的程序或进程,也无法达到远程桌面控制。本文将介绍通过xmanager远程桌面控制Linux的方法和技巧。本文中所指的Linux系统,如无特别说明都以RedHat 9.0为例。

  有两种方法可以实现远程管理Linux桌面窗口,其中一个就是是我们所选择的X显示管理器(X display manager)或者说xdm,另一个流行的解决方案是vnc。我选择xdm而不是vnc出于两点原因。第一,vnc要有个服务端的守护进程,为每个共享的桌面运行。第二,我已经有X服务器的软件安装在所有的工作站上,不想再添加额外的客户端软件了。

我们先来了解一些X系统方面的知识,X是用在大多数UNIX系统中的图形支持系统。如果你在你的Linux机器上使用GNOME或者KDE的话,你就正在使用X系统。它由X联盟(www.X.org)定义并维护。大多数的Linux用户使用的都是由XFree86 项目 (www.xfree86.org)提供的X Window系统的实现。xdm 是一个显示管理器,提供了灵活的任务管理功能。然而xdm通常被认为是“GUI的登陆屏幕,可以自动启动我的X任务”,我们会看到实际上它要更为强大。

  xdm 使用X联盟的X显示管理控制协议,即XDMCP,来和X服务器通信。它允许X服务器从运行xdm服务的服务器上获得会话服务。

  当使用xdm管理这些X任务的时候在设置上有些复杂。但设置xdm 可以得到本地的和其他服务器上的桌面了。我们下面将介绍服务器上配置xdm的方法和步骤,这里描述的配置允许任何的 XDMCP 客户访问 Linux 服务器桌面环境(当然了影响了X的安全)。

  第一步,我们在Linux系统下,修改/etc/X11/xdm/Xaccess文件,找到下面的语句:# * #any  host  can  get  a  login  window

 
去掉最前面的#号,成为

  
第二步,我们修改/etc/X11/gdm/gdm.conf文件,找到下面的语句:

 
  将其中的Enable=false 改为Enable=true 或 Enable=1。
  同时我们要确保存在下面的语句,因为177端口是我们要配置的xdmcp服务的监听端口,我们在后面配置xmanager将看到。

 
   第三步,我们要修改/etc/inittab文件,将下面的语句

 
  改为如下,如果原来就是id:5:initdefault:就不用更改。

 
  同时,找到如下图文字所在的地方,

 
  将它修改为x:5:respawn:/usr/bin/gdm,即如下图所示,

 
   第四步,我们修改/etc/X11/xdm/xdm-config的最后一行,在displayManager.requestPort:0前面加上一个!号,结果如下

 
  第五步,我们修改确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755,在RedHat 9.0中,我们可以看到这两个文件默认的属性就是444和775,因此不用修改。
 

   最后,如果我们的Linux机器配置有防火墙,为防止防火墙将通过177端口(即xdmcp服务)的数据过虑,我们必须加上如下的规则:
   iptables  -A  INPUT  -p udp -s 0/0 -d 0/0 --dport 177 -j ACCEPT
 
至此为止,我们在Linux下的配置xdm已经基本完成。但上面这些配置还只是x服务器端的配置,我们要想实现在Windows远程桌面控制Linux,还必须要
有Windows下的客户端工具,xmanager正是这样的一个工具,它是一个简单易用的高性能的运行在Windows平台上的 X Server 软件。我们现在来介绍xmanager的在Windows下的安装和配置技巧,这里我使用的机器是windows xp。

我们先下载xmanager的安装文件,我下载的是xmanager1.3.9,安装后,在安装目录下,我们点击xconfig,选择xdm,如下图,选择”XDM Indirect”,在 host:后面填上我们已经配置好的Linux系统的ip,注意下面的XDMCP Port:177, 这就是我们在配置Linux服务器时必须保证 port=177的原因。

 
然后我们双击xmanager安装目录里的xmanager,出现下面的画面,

 
选择图中的linux机器,然后点击“连接”即可以连接到我们的redhat登陆桌面了。

 
输入用户名,确定后系统会提示让你输入密码,验证成功后就可以使用我们的redhat桌面了,效果如下:

 
本文介绍了windows下通过xmanager来远程桌面控制Linux的方法,并具体介绍了xdm和xmanager的配置和使用方法,希望给大家带来一定的帮助。


http://www.ppmy.cn/news/420306.html

相关文章

写代码python用什么笔记本好_写代码对电脑有要求吗?什么电脑适合写代码?

这个问题问得好&#xff0c;作为一个一线技术、产品从业者&#xff0c;首先我是一个符合文中定位的最佳用户&#xff1b;然后我从大学期间到现在就帮别人维护电脑超过了千台&#xff0c;这里慢包括了Mac电脑&#xff0c;WindowsPC以及LinuxPC&#xff0c;所以从专业角度来说&am…

Win10环境下如何配置Java JDK系统环境变量【图文教程】

Windows10正式版发布后&#xff0c;不少用户都在第一时间对系统进行了升级。但是&#xff0c;最近有位刚刚升级的用户反映自己因为工作需求要在Windows10环境下配置Java JDK系统环境变量&#xff0c;却不知道该如何操作。这该怎么办呢&#xff1f;接下来&#xff0c;小编就向大…

VMware中Centos6.5ip地址的配置

操作步骤&#xff1a; 1.首先在虚拟机中安装好centos系统之后&#xff0c;使用root用户登陆。使用命令ifconfig -a 查看当前网络配置&#xff0c;会看到一个eth0的网卡信息。&#xff08;默认安装好网卡应该是没有ip的&#xff09; &#xff08;1&#xff09;临时ip地址&#…

UE4不同的版本的配置文件的保存位置

UE4的游戏的不同版本&#xff0c;配置文件的保存位置不一样 编辑器&#xff1a;在项目目录下 开发版&#xff1a;在游戏目录下 发布版&#xff1a;在APPDATA目录下&#xff0c;但是可以通过installed参数改为在游戏目录下 专用服务器&#xff1a;在游戏目录下 参考&#x…

使用KBEngine开发UE4服务端——入门配置

使用KBEngine开发UE4服务端——入门 简介 最近自学使用虚幻UE4开发考虑服务端选型&#xff0c;了解到KBEngine&#xff0c;后改名comblockengine&#xff0c;开源&#xff0c;有开发文档&#xff0c;有更新维护是它的优点&#xff0c;适合我们去深入学习并且快速上手&#xf…

配置nginx挂载文件注意事项

docker pull nginx 命令安装 查找 Docker Hub 上的 nginx 镜像 [rootrabbitmq1 ~]# docker search nginx$ docker pull nginx 等待下载完成后&#xff0c;我们就可以在本地镜像列表里查到 REPOSITORY 为 nginx 的镜像。 以下命令使用 NGINX 默认的配置来启动一个 Nginx 容器实…

如何绕开对通用VMware虚拟机检测_剑灵

1&#xff0c;用记事本打开虚拟系统镜像文件的配置文件&#xff0c;这个文件扩展名为vmx&#xff0c;比如我的虚拟系统名为XP&#xff0c;那这个文件就叫XP.vmx&#xff0c;然后在 其末尾添加这么一句&#xff0c;如下红色部分&#xff08;注意&#xff0c;虚拟机不能在运行状态…

洪门崛起显示与服务器断开连接,剑灵洪门崛起闪退解决方法 剑灵洪门崛起闪退怎么办...

标签&#xff1a; 剑灵 有玩家反映说在玩剑灵洪门崛起的时候游戏出现闪退的情况&#xff0c;不管是安卓还是ios可能都会有玩家遇到过吧&#xff01;那么要怎么解决呢&#xff1f;出现这种现象的原因是什么&#xff1f;那么接下来九游小编就来和大家详细的说说剑灵洪门崛起闪退解…