第四章 X的配置
虽然文章写得不好,但是我还是希望我的文章为公社的朋友提供帮助,和以前一样的,这个系列教程的文章我只在公社发表,希望大家捧场。
我的文章耽误了很久了,很抱歉。前段时间因为我一直忙着找工作,又生病一场,所以文章的事情一推再推,现在终于可以奉献给大家了。
这一章我主要介绍X系统用的主要配置文件XF86Config-4,我采用了对照的方法介绍,一边贴出我的XF86Config-4文件,一边介绍具体的内容。这篇文章对于大家没有什么立杆见影的帮助,不果可以让你对于X的只是有一个基本的了解。
XF86Config-4文件是X系统的主要配置文件。在Redhat 8以前版本中都叫做XF86Config-4这个名字,Redhat 8已经不再叫做这个名字。
编辑这个文件需要小心谨慎一点,因为一点错误,你的X将不能启动。不果没关系啦,改回来就是了学习Linux最好的办法当然还是求助于男人(man),大 家有什么问题尽管看看man的帮助就是了。如果你要删除文件中的内容,最好不要直接的删除,而应该在前面加上#符号把它变成注释。
在Redhat 8以前的版本中,X的配置工具是Xconfigurator,在Debian中X的配种方法是:
dpkg-reconfigure xserver-xfree86
当然你都得用root的身份来运行。
在/usr/share/doc/xfree86-common/FAQ.gz文件中你可以看到具体的技巧。
第一段是Files段,这个部分用来配置X系统说能够使用的字体,每一行都代表一个目录,保存了具体的字体和字体的配置信息。
代码:
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/xp"
FontPath "/usr/X11R6/lib/X11/fonts/XChinese"
FontPath "unix/:7100" # 这是本地字体服务器
# 如果本地字体服务器出了问题,我们可以使用下面的配置
FontPath "/usr/lib/X11/fonts/misc"
FontPath "/usr/lib/X11/fonts/cyrillic"
FontPath "/usr/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/Type1"
FontPath "/usr/lib/X11/fonts/Speedo"
FontPath "/usr/lib/X11/fonts/100dpi" #这两个字体是每一个X
FontPath "/usr/lib/X11/fonts/75dpi" #系统都必需安装的英文字体
EndSection
下面的是模块段,用来配置X系统加载的模块。
代码:
Section "Module"
Load "xtt" #gtk1使用的字体引擎,效果好,速度稍慢
Load "GLcore" #如果你是用的是Nvidia的显卡,似乎一定要注消掉这一行
Load "bitmap"
Load "dbe"
Load "ddc"
Load "dri"
Load "extmod"
# Load "freetype" #如果你使用了xtt模块,那么freetype模块就需要注消掉
Load "glx"
Load "int10"
Load "record"
Load "speedo"
Load "type1"
Load "vbe"
EndSection
下面的段是用来配置你的键盘的,属于“输入设备”
代码:
Section "InputDevice"
Identifier "Generic Keyboard" #这是你的键盘的名字,随便你啦
Driver "keyboard" #键盘的驱动…哇,键盘也有驱动
Option "CoreKeyboard" #如果你有多个键盘,那么你需要在这里指定哪一个键盘是主要的键盘
Option "XkbRules" "xfree86"
Option "XkbModel" "pc104" #键盘的分布格式,一般来说
Option "XkbLayout" "us" #美国104键盘是大家通用的。
EndSection
这里配置你的鼠标,当然你可以配置两个鼠标,如果你有的话
代码:
Section "InputDevice"
Identifier "Configured Mouse" #鼠标的名字
Driver "mouse" #鼠标的驱动
Option "CorePointer"
Option "Device" "/dev/input/mice"
#注意,这里很重要,这是鼠标的设备文件
#我的鼠标是光电鼠标,用的USB接口,对应的鼠标文件是/dev/input/mice
#如果你的鼠标是普通的滚轮鼠标,用的是PS2接口,那么你应该使用
#/dev/mouse或者/dev/psaux或者/dev/ttys0这个设备
Option "rotocol" "ImPS/2"
#这是鼠标的类型,如果不是是滚轮鼠标,那么使用PS/2
Option "Emulate3Buttons" "true"
#在Linux系统中,鼠标的第三个键非常有用,
#如果你的鼠标没有第三个键,那么我们应该允许使用双键同时点击来模拟
Option "ZAxisMapping" "4 5"
EndSection
下面的设备是显卡,这是最头痛的设备了,如果你的显卡太新潮,很有可能不能支持哦。Nvidia的GForce2显卡就必需自己编译显卡的驱动程序才能使用
代码:
Section "Device"
Identifier "Generic Video Card"
Driver "ati" #如果你是Nivida的显卡,这里应该是"nvidia"
EndSection
这个设备是显示器。
代码:
Section "Monitor"
Identifier "Generic Monitor" #显示器的名字
HorizSync 30-60 #显示器的频率,一半来说你的显示器
VertRefresh 50-75 #应该可以达到我的这个水平
#因为我的显示器是15"的老显示器了
#大家的电脑都比我的好吧?
Option "DPMS"
EndSection
下面是综合以上你的配置的设备的各种显示效果
代码:
Section "Screen"
Identifier "Default Screen" #效果的名字
Device "Generic Video Card" #你可以指定你的显卡的名字
Monitor "Generic Monitor" #指定你的显示器的名字
DefaultDepth 24 #默认的颜色深度
SubSection "Display"
Depth 1
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth 4
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" #在这里你可以指定扫描频率例如
#"1024x768 @ 85"就是用85mhz的频率
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection
最终你必需定义下面的段用来告诉X服务器你使用的配置
代码:
Section "ServerLayout"
Identifier "Default Layout" #刚才我们给我们的配置取的名字
Screen "Default Screen" #给我们的效果取的名字
InputDevice "Generic Keyboard" #我们的键盘的名字
InputDevice "Configured Mouse" #我们的鼠标的名字
#这些名字一定要在前面的配置中已经定义
EndSection
Section "DRI"
Mode 0666
EndSection
一般来说我们X启动时候会遇到的问题是:
1:no screen found
这有可能是你没有正确的定义所需要的效果,也有可能是你的其他部分定义出错倒置你的效果不能实现
2:xtt和freetype的冲突,注消一个就可以了
3:驱动没有找到,如果你的显卡非常的新潮,那么多半是这个错误了,编译你的驱动吧…