图形化的界面能让我们方便地享用Linux的强大功能,而且现在Linux的图形化界面已经越来越完善。Linux中经常使用的图形显示系统是X-Window,但是由于其与常见的MS Windows系统有很大的差异,所以在使用时常会遇到一些问题,比如无法驱动显卡、显示器参数错误、花屏和图形界面无法启动等。
因此,本文将在简介X-Window的基础上,介绍如何安装常见显卡和声卡的驱动程序、相关的配置文件,以及参数调整等内容。
X-Window概述
X-Window是一套显示系统,包括Server端和Client端,他们之间使用X协议互相通信。X诞生于1984年,在较短的时间内它就发布到了11个版本—X11。X11经过多年的发展,现在已经发布到X11R6。
X Client将希望显示的图形发送到X Server,X Server将图形显示在显示器上,同时为X Client提供鼠标、键盘的输入服务。因为C/S结构,可以将X的Server和Client分别运行在两台计算机上,甚至可以安装一些软件,让Windows作为X Server,让Linux作为Client,将KDE或GNOME等桌面环境显示到Windows主机上来。
.gif)
图1所示让Windows作为X Server
使用Xmanager 1.3.9,在Windows XP上运行X Server,然后运行一台Linux主机下的startkde,将KDE桌面环境显示在Windows XP下。
使用startx命令可以启动X-Window系统。实际上,是在一台计算机上同时运行Server和Client,在运行startx之后,首先启动的是XFree86,它是Linux平台上最常用的X Server端;然后,又运行X的Client程序,如startkde(KDE的启动脚本)或gnome-session(GNOME的启动脚本)。
它们利用X协议连接本机的X Server,将图形显示出来。
Linux上经常使用的X
Server程序就是XFree86,它的任务是驱动显示卡、显示器、鼠标、键盘等设备,为X Client提供显示、输入服务等。
XFree86的主要文件目录如下:
XFree86文件所在的主要目录为/usr/X11R6;
XFree86的可执行程序文件目录为/usr/X11R6/bin;
XFree86自带的驱动程序所在目录为/usr/X11R6/lib/modules/drivers;
X的配置文件及启动脚本所在目录为/etc/X11;
XFree86的启动配置文件目录为/etc/X11/XF86Config或XF86Config-4,如果这两个文件都存在,XF86Config-4文件优先。
XFree86自带了一些设备的驱动,具体位置在/usr/X11R6/lib/modules/drivers,如果机器显示卡太新,无法使用X-Window,比如使用了Intel的855GM芯片组中集成的显卡无法启动X,则可以考虑升级XFree86。
当前XFree86成熟的版本是4.3,最新的版本4.4正在完善之中。从以下的链接中可获得4.3版的XFree86所支持的所有显卡列表http://xfree86.linuxforum.net/4.3.0/RELNOTES2.html#3。
XFree86官方版本下载网站是http://www.xfree86.org/downloads.html ,中国的镜像网站是http://xfree86.linuxforum.net/downloads.html。
也可以从中科红旗网站http://www.redflag-linux.com/source/download/XFree86_driver4.3.tgz下载。
下载后安装tgz包:
# tar zxvf XFree86_driver4.3.tgz
# sh install.sh
|
安装Intel i865G芯片组显卡驱动
Intel i865G是一种比较新的显卡芯片组,它内置了显示模块,但是安装较早的Linux版本X-Window有可能无法启动。处理这个问题的方法是,一种是直接升级到XFree86 4.3;另一种是通过Intel官方的网站http://downloadfinder. intel.com/scripts-df/support_ intel.asp?iid=HPAGE+header_support_download&下载驱动程序。
在该链接的下载页面可以选择下载RPM包,也可以选择下载tar.gz的压缩文档。尽管这两种的安装方式略有不同,但是经过以下三步基本上可以让显卡在X-Window中正常使用。
1.安装驱动程序
(1)选择下载RPM包:
# rpm -Uvh --force intelgraphics_ 20040607_i386.rpm
|
(2)选择下载的是tar.gz压缩包要执行下面代码:
# tar xzvf IntelGraphics_060704.tar.gz
# cd dripkg
# ./install.sh
|
这时程序将自动安装,安装程序将更新/usr/X11R6/modules/drivers/i810_drv.o的驱动程序,使其支持新的i865G芯片组中的显卡。
图2 使用redhat-config-xfree86
2.选择驱动程序
有三种方法可以选择驱动程序:
(1)如果是Red Hat系统则可以运行下面代码:
图2显示为使用redhat-config-xfree86。这个命令可以自动侦测显卡、配置分辨率和色深,以及选择Advanced页面,然后单击Video Card的Configure按钮,选择正确的显卡。但是,如果是Red Hat Linux 8.0之前版本,则没有这个命令,应该运行下面代码:
这样程序会一步步提示选择正确的驱动程序。
这两种方法都会将结果写入/etc/X11/XF86Config配置文件。
(2)直接更改XFree86的配置文件
直接更改XFree86的配置文件这种方法在Linux系统中比较通用,运行下面命令:
# vi /etc/X11/XF86Config
或者
XF86Config-4
|
在其中找到下面代码,将Driver后面改为i810,表示使用i810_drv.o驱动程序:
Section "Device"
Identifier "Videocard0"
Driver "i810"
VendorName "Videocard vendor"
BoardName "Intel 865"
EndSection
|
该配置文件中其它需要注意的地方如下:
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Unknown monitor"
HorizSync 31.5 - 37.9
VertRefresh 50.0 - 70.0
Option "dpms"
EndSection
|
上面这个部分是设置显示器的类型,不知道自己的显示器叫什么名字没关系,但需要将显示器的垂直刷新率和水平刷新率正确设置,这两个参数可以查看显示器的说明书。以上是15英寸显示器最常用的频率,如果这个参数设置错误,显示器就会花屏或黑屏。
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 16
SubSection "Display"
Depth 16
Modes "1024x768" "800x600" "640x480" //默认会使用最高的分辨率
EndSubSection
EndSection
|
这里是设置显示模式的地方,包括屏幕的分辨率和色深,默认使用最高的分辨率。如果想使用较低的分辨率,那么将高分辨率删除就可以了,在这个配置文件中显示器会使用“1024×768”分辨率,色深是16位色。有关XF86Config文件的详解可以参看它的man page:
(3)让XFree86自己生成XF86Config文件
运行下面命令:
XFree86将自动侦测显卡及显示器,在用户的主目录下生成一个名叫XF86Config.new的文件。可以用以下命令测试这个文件运行是否正常:
# XFree86 -xf86config ~/XF86Config.new
|
这个代码是指定X Server使用 ~/XF86Config.new作为配置文件。
如果有白色X型的光标显示,就可以按“Ctrl+Alt+Backspace”结束X。然后运行下面的命令,用新的配置文件来替换系统配置文件。
# cp ~/XF86Config.new /etc/X11/XF86Config
|
3.启动X-Window
运行startx,启动X-Window。这种方式依赖于控制台(tty),将X-Window作为当前控制台的Shell子进程来运行。
另一种方法是运行桌面管理程序gdm(GNOME桌面管理程序)、kdm(KDE的桌面管理程序)或xdm(XFree86的桌面管理程序)。这种方式不依赖于当前的Shell,即使当前Shell关闭,X-Window一样会继续运行。
以上三步是Linux下安装X-Window显卡驱动程序的通常步骤,绝大多数显卡都可以经过以上的步骤正常使用,所不同的是下载地址和具体的驱动程序的生成方式可能不一样。
|