6.8. 故障排除

如果鼠标无法正常工作,您将需要在继续深入配置之前, 先配置它。 参阅 FreeBSD 安装一章中的 Section 3.10.10, “配置鼠标” 。另外, 新版 Xorg 将会忽略 xorg.conf 中的 InputDevice 部分, 这有助于自动检测硬件设备。 如果需要恢复旧的模式, 可以在这个文件中的 ServerLayoutServerFlags 部分加入一下选项:

Option "AutoAddDevices" "false"

输入设备连同其他需要的选项 (比如, 键盘布局切换) 就可以像以前版本那样配置了。

Note:

正如前面所提到的, 默认情况下 hald 守护进程会自动检测你的键盘可能检测出你的键盘布局或型号有差异, 在桌面环境中, 比如 GNOMEKDEXfce 提供了工具来配置键盘。 另外, 也可在 setxkbmap(1) 工具的帮助下或者通过 hald 的配置文件来直接设置键盘的属性。

举个例, 如果某人想要使用一个 PC 102 键的键盘, 我们就需要为 hald 创建一个名为 x11-input.fdi 的配置文件, 并保存到 /usr/local/etc/hal/fdi/policy 目录中。文件需包含如下内容:

<?xml version="1.0" encoding="iso-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keyboard">
	  <merge key="input.x11_options.XkbModel" type="string">pc102</merge>
	  <merge key="input.x11_options.XkbLayout" type="string">fr</merge>
    </match>
  </device>
</deviceinfo>

如果这个文件已经存在, 只要把键盘配置相关的部分拷贝加入即可。

您需要重启您的计算机, 使 hald 读入此文件。

也可以在 X 模拟终端或一个脚本中使用以下的命令达到相同的效果:

% setxkbmap -model pc102 -layout fr

/usr/local/share/X11/xkb/rules/base.lst 列出了各种不同的键盘, 布局和可用的选项。

接下来是调整 xorg.conf.new 配置文件并作测试。使用文本编辑器如 emacs(1)ee(1) 打开这个文件。 如果是不支持自动检测刷新率的比较旧或者不常见的显示器, 需要在 xorg.conf.new 文件的 "Monitor" 部分指定分辨率:

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
	HorizSync    30-107
	VertRefresh  48-120
EndSection

由于大多数显示器支持自动检测同步频率, 使得手动输入这些值变得很不必要。 对于那些不支持自动检测的显示器, 推荐使用制造商提供的值, 避免对显示器潜在的损伤。

X 能够使用显示器所支持的 DPMS (能源之星) 功能。 xset(1) 程序可以控制超时时间, 并强制待机、 挂起或关机。 如果希望启用显示器的 DPMS 功能, 则需要把以下设置内容添加到 monitor 部分:

Option       "DPMS"

关闭 xorg.conf.new 之前还应该选择默认的分辨率和色深。 这是在 "Screen" 部分中定义的:

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	DefaultDepth 24
	SubSection "Display"
		Viewport  0 0
		Depth     24
		Modes     "1024x768"
	EndSubSection
EndSection

DefaultDepth 关键字描述了要运行的默认色深。 这可以通过 Xorg(1)-depth 命令行开关来替代配置文件中的设置。 Modes 关键字描述了给定颜色深度下屏幕的分辨率。 需要说明的是, 目标系统的图形硬件只支持由 VESA 定义的标准模式。 前面的例子中, 默认色深是使用 24位色。 在采用这个色深时, 允许的分辨率是 1024x768。

最后就是将配置文件存盘, 并使用前面介绍的测试模式测试一下。

Note:

在发现并解决问题的过程中, 包含了与 Xorg 服务器相关的各个设备的信息的 Xorg 日志文件会为您发现和排除问题有所帮助。 Xorg 日志的文件名是 /var/log/Xorg.0.log 这样的格式。 实际的日志文件名可能是 Xorg.0.logXorg.8.log 等等。

如果一切准备妥当, 就可以把配置文件复制到指定目录中。 您可以在 Xorg(1) 的联机手册里找到具体位置。 这个位置通常是 /etc/X11/xorg.conf 或是 /usr/local/etc/X11/xorg.conf

# cp xorg.conf.new /etc/X11/xorg.conf

Xorg 的配置过程已经完成。 现在可以通过 startx(1) 启动 Xorg , 也可以配合 xdm(1) 来启动 Xorg 服务器。

6.8.1. 配置 Intel® i810 显示芯片组

配置 Intel® i810 芯片组的显示卡需要有针对 Xorg 的能够用来驱动显卡的 agpgart AGP 程序接口。 请参阅 agp(4) 驱动程序的联机手册了解更多细节。

这也适用于其他的图形卡硬件配置。 注意如果系统没有将 agp(4) 驱动程序编译进内核, 尝试用 kldload(8) 加载模块是无效的。 这个驱动程序必须编译进内核或者使用 /boot/loader.conf 在启动时加载进入内核。

6.8.2. 添加宽屏平板显示器

这一节假定您了解一些关于高级配置的知识。 如果使用前面的标准配置工具不能产生可用的配置, 则在日志文件中提供的信息应该足以修正配置使其正常工作。 如果需要的话,您应使用一个文本编辑器来完成这项工作。

目前的宽屏(WSXGA、WSXGA+、WUXGA、WXGA、WXGA+,等等)支持 16:10 和 10:9 或一些支持不太好的显示比例。 常见的一些 16:10 比例的分辨率包括:

  • 2560x1600

  • 1920x1200

  • 1680x1050

  • 1440x900

  • 1280x800

有时, 可以简单地把这些分辨率作为 Section "Screen" 中的Mode 来 进行配置, 像下面这样:

Section "Screen"
Identifier "Screen0"
Device     "Card0"
Monitor    "Monitor0"
DefaultDepth 24
SubSection "Display"
	Viewport  0 0
	Depth     24
	Modes     "1680x1050"
EndSubSection
EndSection

Xorg 能够自动地通过 I2C/DDC 信息来自动获取宽屏显示器的分辨率信息,并处理显示器支持的频率和分辨率。

如果驱动程序没有找到对应的 ModeLines , 就需要给 Xorg 一些提示了。 使用 /var/log/Xorg.0.log 能够提取足够的信息, 就可以写一个可用的 ModeLine 了。 这类信息如下所示:

(II) MGA(0): Supported additional Video Mode:
(II) MGA(0): clock: 146.2 MHz   Image Size:  433 x 271 mm
(II) MGA(0): h_active: 1680  h_sync: 1784  h_sync_end 1960 h_blank_end 2240 h_border: 0
(II) MGA(0): v_active: 1050  v_sync: 1053  v_sync_end 1059 v_blanking: 1089 v_border: 0
(II) MGA(0): Ranges: V min: 48  V max: 85 Hz, H min: 30  H max: 94 kHz, PixClock max 170 MHz

这些信息称为 EDID 信息。 从中建立 ModeLine 只是把这些数据重新排列顺序而已:

ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings>

如此, 本例中 Section "Monitor" 中的 ModeLine 应似下面的形式:

Section "Monitor"
Identifier      "Monitor1"
VendorName      "Bigname"
ModelName       "BestModel"
ModeLine        "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
Option          "DPMS"
EndSection

经过简单的编辑步骤之后, X 就可以在您的宽屏显示器上启动了。

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.