FreeBSD   XF86Config

.逸晨


其實設置 XFree86 的動作並不限定要在安裝好 XFree86 便要做的,只要在您第一次執行 startx 之前設置好即可,不過還是先做會比較好啦 ^_^
要設置 XFree86 您有幾種方式可以選用︰
  • xf86config => shell script 問答模式
  • xf86cfg -textmode => 文字選單模式
  • xf86cfg => 圖型選單模式
  • XFree86 -configure => 自動產生模式
除了 XFree86 自動產生模式外,其餘三種您皆可以執行指令方式進入,或由 /stand/sysinstall 介面來進入;底下是經由
/stand/sysinstall => Configure => XFree86
後所看到的畫面︰

您可以每種都試試,看看何種較能得您歡心。但在這兒請容許逸晨偷個懶,將以『自動產生模式』的方法來產生設定檔,因為它是所有的模式中最方便的一種了 ^_^
請以 root 身份執行如下指令︰

shell# XFree86 -configure

下達指令後,系統會自動為您偵測所使用的硬體裝置,以便設定 X-Window 所需要的設定。您會需要等待一些時間,大約是會讓您誤以為已經當機那麼久 ^_^
請您務必給些耐心等候喲,不過若是超過了五分鐘還是沒有任何反應的話,那就真的很可能是當機了,但機率可說等於零,除非是您的硬體配備有問題 (比如︰顯示卡)。
當完成之後,您可以在 /root/ 目錄下發現有個 XF86Config.new 檔案,這就是最初步的設定檔了,請將它搬移到 /etc/X11/ 目錄下,並改名為 XF86Config。

shell# mv /root/XF86Config.new /etc/X11/XF86Config

此時請不要心急喲,您還需要為此設定檔做些善後工作。在開始之前,請先快速看一下最原始的 XF86Config 吧!
底下是針對 XF86Config.new 所做的解說︰

ServerLayout
Section "ServerLayout"
	Identifier     "XFree86 Configured"
	Screen      0  "Screen0" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
這一個區域是指定要使用哪一個裝置設定組。您可以為您的 X Window 設置多組不同設定的裝置配置設定值,不過通常都是只會使用固定的一組,因此您只需要只道這是做啥用途的即可,無需去改變它的設定。

Files
Section "Files"
	RgbPath      "/usr/X11R6/lib/X11/rgb"
	ModulePath   "/usr/X11R6/lib/modules"
	FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
	FontPath     "/usr/X11R6/lib/X11/fonts/Speedo/"
	FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
	FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
	FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection
這個區域是用來指定字型、模組、配色等等的相關路徑位置,通常您會需要變動的大概就是字型的路徑所在了。目前所呈列的是於安裝 X Window 時所預設安裝的,即使您已先安裝好其他的字型,XFree86 -configure 指令在偵測時,並不會為您將自行安裝的字型路徑給添加上,所以您很有可能需要自行手動編輯,將額外安裝的字型路徑給加上。比如為了要能夠有個漂亮、且親切的視窗中文使用界面,您會需要安裝國僑中文字型與文鼎中文字型,這時您就需要將這兩組字型的路徑給加入這個設定區域。如下︰
--- 省略 ---
	ModulePath   "/usr/X11R6/lib/modules"
	FontPath     "/usr/X11R6/lib/X11/fonts/TrueType"
	FontPath     "/usr/X11R6/lib/X11/fonts/local"
	FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
--- 省略 ---
通常我們會將較常使用到的字型擺放於第一順位,這樣子的顯示會得到較佳的效率。不過如果您若是發覺 X Window 不是很穩定的話,有時調整一下字型路徑的順序是會有所幫助的喲!!

Module
Section "Module"
	Load  "dbe"
	Load  "dri"
	Load  "extmod"
	Load  "glx"
	Load  "pex5"
	Load  "record"
	Load  "xie"
	Load  "xtrap"
	Load  "speedo"
	Load  "type1"
EndSection
這是設定載入的模組區域。您如果有自行安裝 TrueType 字型時,您會需要增加一行 Load "xtt" 的設定,當然,一樣是擺放在第一順位嘍 ^_^

InputDevice -- Keyborad
Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "keyboard"
EndSection
這兒是設定鍵盤的區域。除非必要,不然使用預設值即可。

InputDevice -- Mouse
Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "MouseSystems"
	Option	    "Device" "/dev/sysmouse"
EndSection
/pre>
這是設定滑鼠的區域。基本上您並不需要改變這裡的設定值,不過如果您是使用有滾輪的滑鼠時,您會需要編修一下滑鼠的設定區域。如下︰
Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "MouseSystems"
	Option	    "Device" "/dev/sysmouse"
	Option      "ZAxisMapping" "4 5"
EndSection
啟用滾輪的關鍵處在於將滾輪視為滑鼠的第四鍵與第五鍵,而這個對映的設定就是 Option "ZAxisMapping" "4 5",相信您在看到 Mapping 的字樣應該就不難理解了。 如果您發現您無法成功的在 X Window 下驅動滑鼠或是滾輪的功能,您可以試著將 Option "Protocol" "MouseSystems" 改為 Option "Protocol" "Auto",讓系統改採自行偵測的模式。

Monitor
Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection
這是設定螢幕的區域。這關係到您是否能愉快使用 X Window 的第一步。您需要為您的螢幕指定可用的掃描頻寬,您需要拿出您的硬體清單列表來查看了,並將相關的頻寬數值給編寫進來。如下︰
Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
	Horizsync    30 - 80	# 垂直掃描頻寬
	VertRefresh  47 - 150   # 水平掃描頻寬
EndSection
再來是定義螢幕在每個解析度所要使用的掃描頻率 (Modeline),這需要有這方面的知識才有辦法換算該設定值,若是胡亂設定,小心很有可能會燒壞您的螢幕喲!!所幸有個好用的工具 xvidtune 可以幫咱們取得設定值。
Modeline 的格式如下︰
Modeline   "解析度值"   頻寬   水平掃描頻率   垂直掃描頻率   額外參數
這個設定值並非必需的,如果您覺得整個畫面看起來並無不妥的話。
在執行 xvidtune 並取得 Modeline 的設定值之後,將其覆製並貼上於此區域中,如下︰
Section "Monitor"
 Identifier   "Monitor0"
 VendorName   "Monitor Vendor"
 ModelName    "Monitor Model"
 Horizsync    30 - 80	# 垂直掃描頻寬
 VertRefresh  47 - 150  # 水平掃描頻寬
 Modeline "1024x768"  94.50  1024 1072 1168 1376  768 769 772 808  +hsync  +vsync
EndSection
請特別注意,您我所使用的螢幕設定值是不太可能會相同的,所以在這個區域的設定值請勿直接套用,以免造成螢幕燒毀。

Device
Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "SWcursor"           	# [<bool>]
        #Option     "HWcursor"           	# [<bool>]
        #Option     "NoAccel"            	# [<bool>]
        #Option     "ShowCache"          	# [<bool>]
        #Option     "ShadowFB"           	# [<bool>]
        #Option     "UseFBDev"           	# [<bool>]
        #Option     "Rotate"             	# [<str>]
        #Option     "VideoKey"           	# <i>
        #Option     "FlatPanel"          	# [<bool>]
	Identifier  "Card0"
	Driver      "nv"
	VendorName  "NVidia"
	BoardName   "GeForce2 MX/MX 400"
	BusID       "PCI:1:0:0"
EndSection
/pre>
這個區域是設定您的顯示卡的。與鍵盤相同,基本上無需再做其他的設定修改,除非您知道您將要做什麼。

Screen
Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Depth     1
	EndSubSection
	SubSection "Display"
		Depth     4
	EndSubSection
	SubSection "Display"
		Depth     8
	EndSubSection
	SubSection "Display"
		Depth     15
	EndSubSection
	SubSection "Display"
		Depth     16
	EndSubSection
	SubSection "Display"
		Depth     24
	EndSubSection
EndSection
這算是戲肉了。這個區域指定您的桌面要使用多少色素數目來顯現影像,以及指定使用的解析度。
您需要指定預設使用的色系組,並於該色系組中指定使用的解析度。當然,您也可以同時設定多組色系,以便日後切換使用。通常來說,除非您是對色彩很敏感的人,不然指定使用 16bit 的色系組即可。因為使用愈高的色系組,雖然色彩會更鮮艷 (對色彩不敏感的人應該是感覺不出來 -- 比如逸晨 ^_^),但相對的系統也需要花費較多的時間來換算,這在較低階的裝置配備時,將會造成系統許多額外的負擔。因此建議您,除非真的需要,不然就選用 16bit 的色系組吧。
您可以將永遠都用不到的色系組去除,僅留下要使用的色系組。編修後的內容如下︰
Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	DefaultColorDepth	16
	# 指定預設使用 16bit 色系組,X Window 會從 Depth 16 的組態中讀取相關設定值。
	
	SubSection "Display"
		Depth     16
		Modes	  "1024x768" 
		# 指定使用的解析度
		Virtual   1024 768 
		# 指定使用虛擬桌面的大小,若不使用時,可將大小設成與解析度一樣大,或是註解/刪除。
		ViewPort  0 0 
		# 如有使用虛擬桌面時,指定虛擬桌面由哪開始顯示。預設為螢幕的左上角 (0,0)。
	EndSubSection
	
	SubSection "Display"
		Depth     24
		Modes   "1024x768" "800x600" 
		# 指定一組以上的解析度時,可使用 Ctrl + Alt + 『+』(or 『-』) 來切換解析度。
	EndSubSection
EndSection

ServerFlags
Section "ServerFlags"
	Option "BlankTime"    "10"
	# 要使用以下三個螢幕裝置省電/保護功能
	# 您需要在 Monitor 區域加入 Option "DPMS" "on" 的功能選項
	Option "StandbyTime"  "20"
	Option "SuspendTime"  "30"
	Option "OffTime"      "40"
EndSection
這是讓您做些額外設定用的區域。您在 XF86Config.new 檔中看不到這個設定區域的,您需要視自己的需求來寫入相關的設定值。
  • Option "BlankTime"
    設定當閒置多少時間沒有任何操作時,系統會啟動全黑畫面的螢幕保護程式。預設值為 10 分鐘。
  • Option "StandbyTime"
    設定當閒置多少時間沒有任何操作時,螢幕會進入待機狀態。預設值為 20 分鐘。
  • Option "SuspendTime"
    設定當閒置多少時間沒有任何操作時,螢幕會進入暫停狀態。預設值為 30 分鐘。
  • Option "OffTime"
    設定當閒置多少時間沒有任何操作時,螢幕會進入關閉狀態 (非將螢幕電源關閉),此狀態仍是螢幕電源啟用時,最為省電的狀態。預設時間為 40 分鐘。
請依您的實際使用情況來調整相對的狀態啟動時間值,不當的時間值,非但無法真正達到省電的功能,且很有可能會縮短螢幕的使用壽命喲。

更詳細的設定說明,請 man XF86Config(5),或前往下列網址查閱。
http://www.xfree86.org
http://www.xfree86.org/4.2.1/RELNOTES.html
http://www.xfree86.org/~anderson/ConfiguringX/siframes.htm


上一篇返回首頁目錄索引章節目錄回上一頁Page UP下一篇

最佳瀏灠環境︰Mozilla & 1024x768