升级Xwindow chubuyi 2001年 19期 Xwindow是Linux下功能强大的图形工作环境,为Linux爱好者提供了友好的人机界面,深受广大Linux爱好者的喜爱。但目前众多的商业版本大多只包含Xfree86 3.x,该版本对目前的主流硬件支持并不好,比如深受众人喜爱的Geforce 2 MX显卡在Xwindow下不能正确识别,导致花屏、色彩上不去。为了让它支持像Geforce 2 MX显卡这样的主流硬件,很有必要升级Xwindow。Xwindow虽然好用,但安装过程极其麻烦,下面我谈谈其安装过程及注意事项,希望能给大家一个参考。   #1一、下载Xfree86   目前它的最新版本为Xfree 86 4.0.2,可以到ftp://ftp.xfree86.org/pub/XFree86/4.0.2下载ftp://ftp.xfree86.org/pub/XFree86/MIRRORS。必须要下载的文件有:   1. Xinstall.sh 安装脚本文件   2. extract 解开安装文件的程序   3. Xbin.tgz X客户端程序及应用工具和time libraries运行时所需数据库   4. Xlib.tgz 运行时所需数据文件   5. Xman.tgz 手册文件   6. Xdoc.tgz XFree86文档   7. Xfnts.tgz 基本字库   8. Xfenc.tgz 基本字库编码文件   9. Xetc.tgz 运行时配置文件   10. Xvar.tgz 运行时数据文件   11. Xxserv.tgz X服务器端程序   12. Xmod.tgz X服务器模块   可选的有:   1. Xfsrv.tgz 字体服务器   2. Xnest.tgz 嵌套的X服务器   3. Xprog.tgz X头文件、配置文件和编译所需库文件   4. Xprt.tgz X打印服务器   5. Xvfb.tgz 虚拟帧缓冲X服务器   6. Xf100.tgz 100dpi字体   7. Xfcyr.tgz Cyrillic 字体   8. Xflat2.tgz Latin-2 字体   9. Xfnon.tgz 大位图字体   10. Xfscl.tgz Scalable 字体(Speedo and Type1)   11. Xhtml.tgz HTML 格式的文档   12. Xps.tgz PostScript 格式的文档   13. Xjdoc.tgz 日本语言的文档   注意:extract必须以二进制的格式下载,在Windows下,系统根据扩展名判断文件格式,有些下载工具下载时可能会搞错,此时可以下载extract.exe文件。   #1二、运行安装脚本文件Xinstall.sh   强烈建议利用安装脚本文件Xinstall.sh来安装Xfree86 4.0.2。在安装过程中针对不同平台和硬件配置步骤有所不同,不过都应以root登录,将下载的文件放在同一目录下,进入该目录运行sh Xinstall.sh,按提示回答安装程序提出的问题。大多数情况下,除了第一个问题外,默认回答都应是ok。   #1三、需要注意的一些问题   1.安装Xfree86 4.0.2时最好退出Xwindow,系统不能有任何X进程,否则,安装程序会警告。除非你有充分理由认为这不会引起问题,你应该退出X进程,包括停止Xdm和任何正在运行的类似程序。   2.如果曾经安装过X(大多数商业版本Linux都已包括Xwindow),系统会提示继续安装会覆盖旧版本X。当然,只有Xfree86 4.0.2中有的部分才会被覆盖。某些配置文件也会被覆盖,强烈建议在安装时做好备份。不要简单地将/usr/X11R6改名,最好将/usr/X11R6拷到其他目录,将新版本安装在原来位置,如有问题,想恢复时只需将/usr/X11R6下的那份删掉,将新目录下那份拷回来即可。   3.安装过程中程序会删掉一些妨碍安装的旧文件或目录,删除之前,会显示一个列表,列出被删掉的文件,如果没有列表,表示什么都没删除。   4.对于3.9.18版本的Xwindow,运行时的配置文件放在/etc/X11而不是以前的/usr/X11R6/lib/X11。安装程序会询问是否愿意将这个文件移动到新的位置并建立相关链接,如果不愿意回答NO即可,此时新的配置文件将放在/usr/X11R6/lib/X11下。   5.安装程序会安装其他的配置文件,如果你自己没有做过一些特殊设置,可以放心地回答YES,但如果你定制过自己的Xwindow,此时会被覆盖,只好以后手工修改。为了省事,可试着选NO(佩服佩服),会有一些其他问题等着你绞尽脑汁解决。这些配置文件放在Xetc.tgz中,你可以单独解开它,手工修改。   6.处理完配置文件后,会安装Xwindow的必需组件,如果你下载过可选项,此时也可一块安装。     到这一步,安装的主要步骤就完成了,剩下的就是整理安装过程中产生的文件。首先运行ldconfig使新安装的共享库文件可以正确存取,更新某些目录下的字库目录文件fonts.dir(非常重要)。接着安装程序会检测系统是否存在termcap文件或terminfo文件,如果是前者,它会提示如何修改文件中的某些项目;如果是后者,会提示是否愿意让安装程序升级它。   安装时可能会被问到是否愿意为GL库文件和头文件建立链接。在Linux平台下OpenGL标准要求这些文件安装到系统的特定位置(/usr/lib和/usr/include)。因此安装程序会主动建立合适的链接。如果在/usr/lib中已经有了其他版本的libGl,则会被覆盖。安装程序可以为rstarted建立一个链接,如果不愿意,以后可以通过以下命令实行   rm -f /usr/bin/rstarted   ln-s /usr/X11R6/bin/rstarted /usr/bin/rstarted   #1四、配置Xserver   以前版本的Xfree86可以通过xfconfig或xf86cfg来配置Xserver,新版本的Xfree86还可以通过Xfree86 - configure filename来进行更灵活的配置。其中filename为配置文件的名字,如果没有,会自动生成一个新的配置文件放在/etc/X11下,如果指明filename,Xfree86会以该文件为配置文件运行Xserver,检测其是否正确。一旦你对新的Xserver满意后,可以将/usr/X11R6/bin下旧的Xserver二进制文件删掉,一般为XF86_*或XF98_*。注意,和3.x版本的Xfree86相比,新版本同一时间只能有一个Xserver驱动显卡,不过我想这已经够了。配置完后,重新启动机器。   在升级过程中很多地方都会引起错误,很多库文件和模块都发生了变化,不同的机器、软件都会有一些不同的地方。运行Xserver时一定要确保Xf86Config文件正确,该文件的配置及检测过程较长,检测显示设备期间会黑屏,不要误以为死机了,一般来说Linux很少死机,如果长时间无反应,可按Ctrl+Alt+Backspace退出检测过程。在var/log下存放着一个日志文件Xfree86.o.log,由于Xfree86 3.3.x不会生成var/log/Xfree86.o.log文件,如果该文件不存在,说明没有成功的升级到4.0.x。如果存在该文件,你可以分析该文件,判断是哪里的问题。如有问题可发信到chubuyi@sina.com和我讨论。