XF86Conifg檔案詳解(轉)
X-Window系統給我們提供了許多配置工具,但最終也是生成了一個配置檔案:XF86Config,它存放在/etc/X11目錄下。如果你能夠直接讀懂它,那麼對其做一些小的調整,那將是十分容易的事。現在我們就一起來分析一下這個配置檔案。它分成了許多個小節,每個小節分別配置一部分。
一、 File配置小節
設定X Window系統所用的字型路徑,下面是一個配置例項:
Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "/usr/X11R6/lib/X11/fonts/TrueType" FontPath "unix/:-1" EndSection
其中Section“Files”表示Files小節開始,EndSection表示這個小節結束。其間有幾個配置項:
1)RgbPath:設定RGB色彩資料庫的路徑。這個配置項的內容是在安裝的時候就寫好的,肯定沒錯,別改它。
2) FontPath:用來設定字型的路徑。而像Redhat Linux會採用X Font Server(字型伺服器)來管理所有的字型,這時,你就會看到字型路徑就像:"unix/:-1"
二.Server Flag配置小節
設定X Server的各種選項,包括一些功能鍵的設定,下面是一個配置例項:
Section "ServerFlags" # NoTrapSignals # DontZap # DontZoom # DisableVidModeExtension # AllowNonLocalXvidtune # DisableModInDev # AllowNonLocalModInDev EndSection
Section"ServerFlags"表示ServerFlags小節的開始,EndSection表示該小節的結束,其中有以下幾個配置項:
1)NoTrapSignals:不捕捉訊號,在錯誤發生時直接dump產生Core檔案。若啟用這項設定將可能導致控制檯不穩定,不過對於高手而言,dump產生的core檔案有利於糾錯。建議不啟用。
2)DontZap:取消使用Ctrl+Alt+Backspace組合熱鍵退出XWindow系統的功能。預設是註釋掉它,也就是說可以使用Ctrl+Alt+Backspace組合熱鍵退出X Window系統。建議不啟用。
3)DontZoom:取消使用Ctrl+Alt++和Ctrl+Alt+-組合鍵切換顯示模式的功能。預設是註釋掉它的,也就是說可以使用這兩個組合鍵進行顯示模式的切換。建議不啟用。
4) DisableVidModeExtension:禁示使用xvidtune程式調整畫面。
5) AllowNonLoaclXvidtune:允許使用非本地端的xvidtune程式。
6) DisableModInDev:關閉動態變更輸入裝置的設定。
7) AllowNonLocalModInDev:允許非本地端變更鍵盤和滑鼠的設定。
注:xvidtune程式是Xwindows中提供的一個應用程式,它用來調整畫面顯示大小和位置的程式。
三、 鍵盤配置小節
設定各式鍵盤,在此可以指定鍵盤的傳輸協議、語系、訊號、字元對照表,下面是一個配置例項:
Section "Keyboard"Protocol "Standard"AutoRepeat 500 5# ServerNumLockLeftAlt MetaRightAlt MetaScrollLock ComposeRightCtl Control# XkbDisable# XkbModel "pc102"# XkbModel "microsoft"# # # XkbOptions "ctrl:swapcaps"XkbRules "xfree86"XkbModel "pc101"XkbLayout "en_US"EndSection
Section "Keyboard"表示Keyboard小節的開始,EndSection表示該小節的結束,其中有以下幾個配置項:
1) Protocol:用來配置鍵盤所使用的傳輸協議。可選值為:
Standard:標準傳輸協議
Xqueue:使用X佇列傳輸協議
預設值就是Standard,一般無需修改,大家的大都是標準的鍵盤。
2) AutoRepeat:用來配置對按住某鍵不放的處理,格式為:
AutoRepeat 毫秒數 次數
如:AutoRepeat 500 5,表示當按住某鍵500毫秒(0.5秒)後,開始自動送出該按鍵訊號,每秒5次。
3) ServerNumLock:讓X server處理NumLock訊號,效果等於關閉鍵盤右方數字鍵的功能。
4) 以下一組配置項是用來設定鍵盤上Alt、Ctrl、Shift、ScrollLock等鍵的 功能定義:
LeftAlt Meta
RightAlt Meta
ScrollLock Compose
RightCtl Control
左邊是鍵名,LeftAlt就是左邊的ALT鍵,RightAlt就是右邊的ALT鍵……,而右邊則是功能定義,包括:
Compose:等於一般Scroll Lock按鍵的功能;
Control:等於一般Ctrl按鍵的功能;
Meta:等於一般Alt按鍵的功能;
ModeLock:等於一般Caps Lock按鍵的功能
ModeShift:等於一般Shift按鍵的功能。
接下來則是關於XKB的配置:
5) XkbDisable:關閉鍵盤擴充套件屬性,也即不指定其型別及對應的語言
6)XkbCompat:設定鍵盤相容性,預設值是“default”,包含有“Basic”的設定,按串列埠的“mousekeys”、“accessx”、“misc”、“iso9995”與“japan”,相關檔案配置放在/usr/X11R6/lib/X11/xkb/compat目錄下。
7)XkbGeometry:指定鍵盤結構,不同的鍵盤有不同的硬體結構,除非是使用Amiga、Atari、Macintosh等專用鍵盤,否則應使用預設值“pc”,不設定也行。它的相關選項在/usr/X11R6/lib/X11/xkb/geometry目錄下。
8)XkbKeycodes:指定鍵盤按鍵送出的資訊,預設值為“xfree86”,其餘的可用設定位於/usr/X11R6/lib/X11/xkb/keycodes目錄下。
9)XkbKeymap:指定鍵盤配置型別設定檔案,可用的檔案位於/usr/X11R6/lib/X11/xkb目錄裡的keymap子目錄。如果設定了本選項相當於同時設定了XkbKeycodes、XkbTypes、XkbCompact、XkbSymbols以及XkbGeometry。
10)XkbLayout:設定鍵盤輸出語系,使用預設值“us”即採用美式英文。可選值為:de:德文 fr:法文 it:義大利文 jp:日文 ru:俄文
11)XkbModel:設定鍵盤的型號,常見的是“pc101”、“pc102”。若採用具有微軟標誌的鍵盤的話,請改為“pc104”。
12)XkbOptions:設定鍵盤選項,通常並不需要任何選項設定,除非您想要交換按鍵的定義。如“ctrl:swapcaps”就可以將Ctrl與Caps Lock鍵互換。
13)XkbRules:指定Xwindow採用的鍵盤規範檔案,除非有特殊需要(使用SGI的鍵盤),否則應使用預設值:“xfree86”,其它的可選值在/usr/X11R6/lib/X11/xkb/rules目錄下。
14)XkbSymbols:定義鍵盤各按鍵所對應的字碼,各國鍵盤革些字碼不盡相同。預設使用“us”,即ASCII,字碼表對照檔案放在/usr/X11R6/lib/X11/xkb/symbol目錄下,使用者可以修改。 15)XkbTypes:設定鍵盤的種類,預設值為“default”,在/usr/X11R6/lib/X11/xkb/types目錄下給出了所有的選項。
16)XkbVariant:設定鍵盤變數,通常無須設定。
四、 滑鼠配置小節
設定諸如滑鼠、觸控式螢幕等標準輸入裝置。下面是一個配置例項:
Section "Pointer"Protocol "PS/2"Device "/dev/mouse"# Protocol "Xqueue"# BaudRate 9600# SampleRate 150Emulate3ButtonsEmulate3Timeout 50# ChordMiddleEndSection
與前面一樣,Section"Pointer"代表該小節的開始,EndSection代表該小節結束。在該配置小節中,共有以下配置項:
1) Protocol:設定滑鼠使用的傳輸協議,可使用的協議有:
Auto:讓X window自已檢測,但可能不準確
BusMouse:匯流排型滑鼠,早期的串列埠滑鼠
GlidePoint:使用ALPS串列埠版本的GlidePoint觸控式螢幕及其相容產品
GlidePointPS/2:使用ALPS PS2版本的GlidePoint觸控式螢幕及其相容產品
IMPS/2:使用微軟PS/2版本的IntelliMouse及其相容產品
IntelliMouse:使用微軟串列埠版本的IntelliMouse及其相容產品
Logitech:使用舊版Logitech串列埠滑鼠,新版的已改為“Microsoft”協議
Microsoft:在1992年起的5-8年間使用的串列埠滑鼠
MMHitTab:使用舊版Logitech串列埠的HitTablet手機板
MMSeries:使用舊版Logitech串列埠的MouseMan滑鼠
MouseMan:使用中期的Logitech串列埠的MouseMan滑鼠
MouseManPlusPS/2:使用LogitechPS/2版本的天貂及其相容產品
MouseSystem:採用MouseSystem傳輸協議的串列埠滑鼠可以使用該選項
NetMosuePS/2:使用Genius PS/2版本的NetMouse網路滑鼠及其相容產品
NetScrollPS/2:使用Genius PS/2版本的NetScroll滾輪滑鼠及其相容產品
OSMouse:使用由作業系統控制的滑鼠,而非讓X Window控制滑鼠
PS/2:現在最廣泛使用的PS/2介面的滑鼠
SysMouse:讓FreeBSD能夠使用外圍裝置代號為/dev/sysmouse的滑鼠裝置
ThinkingMouse:使用Kensington串列埠版本的Thinking滑鼠
ThinkingMousePS/2:使用PS/2版本的Thinking滑鼠及其相容產品
Xqueue:假如你在鍵盤裝置段讓鍵盤使用X佇列傳輸協議,則這裡也要
2) Device:用來設定連線滑鼠的外圍裝置程式碼,通常都是/dev/mouse
3) BaudRate:用來設定波特率,只對某些Logitech滑鼠有效,當使用AceCad繪圖板時,需要將其設定為9600
4) SampleRate:用來設定取樣率,只對某些Logitech滑鼠有效
5) Emulate3Buttons:將雙鍵滑鼠模擬成為三鍵滑鼠
6) Emulate3Timeout:設定模擬三鍵超時時間
7) ChordMiddle:如果是Logitech滑鼠,那麼得用這一配置項代替Emulate3Buttons
五、 顯示器配置小節
設定顯示器的水平、垂直掃描頻率,同時定義各個顯示模式與掃描頻率之間的對應關係。X Server會根據顯示器掃描頻率的設定,配置使用者指定的顯示模式,自動在數十種的對應關係中,找到最恰當的顯示重新整理率。下面是一個配置例項:
Section "Monitor"Identifier "Generic Monitor"VendorName "Unknown"ModelName "Unknown"HorizSync 31.5VertRefresh 60ModeLine "640x480" 25.175 640 664 760 800480 491 493 525EndSectionSection "Monitor"Identifier "cpq1355"VendorName "Unknown"ModelName "Unknown"HorizSync 30 - 60VertRefresh 50 - 125# Mode "1024x768i"# DotClock 45# HTimings 1024 1048 1208 1264# VTimings 768 776 784 817# Flags "Interlace"# EndMode# --- 640x480 ---# 640x480 @ 60 Hz, 31.5 kHz hsyncModeline "640x480" 25.175 640 664 760 800480 491 493 525# 640x480 @ 72 Hz, 36.5 kHz hsyncModeline "640x480" 31.5 640 680 720 864480 488 491 521# 640x480 @ 75 Hz, 37.50 kHz hsyncModeLine "640x480" 31.5 640 656 720 840480 481 484 500 -HSync -VSync# 640x480 @ 85 Hz, 43.27 kHz hsyncModeline "640x480" 36 640 696 752 832480 481 484 509 -HSync -VSync# 640x480 @ 100 Hz, 53.01 kHz hsyncModeline "640x480" 45.8 640 672 768 864480 488 494 530 -HSync -VSync# --- 800x600 ---# 800x600 @ 56 Hz, 35.15 kHz hsyncModeLine "800x600" 36 800 824 896 1024600 601 603 625# 800x600 @ 60 Hz, 37.8 kHz hsyncModeline "800x600" 40 800 840 968 1056600 601 605 628 +hsync +vsync# 800x600 @ 72 Hz, 48.0 kHz hsyncModeline "800x600" 50 800 856 976 1040600 637 643 666 +hsync +vsync# 800x600 @ 85 Hz, 55.84 kHz hsyncModeline "800x600" 60.75 800 864 928 1088600 616 621 657 -HSync -VSync# 800x600 @ 100 Hz, 64.02 kHz hsyncModeline "800x600" 69.65 800 864 928 1088600 604 610 640 -HSync -VSync# --- 1024x768 ---# 1024x768 @ 60 Hz, 48.4 kHz hsyncModeline "1024x768" 65 1024 1032 1176 1344768 771 777 806 -hsync -vsync# 1024x768 @ 87 Hz interlaced, 35.5 kHz hsyncModeline "1024x768" 44.9 1024 1048 1208 1264768 776 784 817 Interlace# 1024x768 @ 70 Hz, 56.5 kHz hsyncModeline "1024x768" 75 1024 1048 1184 1328768 771 777 806 -hsync -vsync# 1024x768 @ 76 Hz, 62.5 kHz hsyncModeline "1024x768" 85 1024 1032 1152 1360768 784 787 823# 1024x768 @ 85 Hz, 70.24 kHz hsyncModeline "1024x768" 98.9 1024 1056 1216 1408768 782 788 822 -HSync -VSync# 1024x768 @ 100Hz, 80.21 kHz hsyncModeline "1024x768" 115.5 1024 1056 1248 1440768 771 781 802 -HSync -VSyncEndSection
正如上面所示,在一個配置檔案中可以有多個Monitor配置小節,用來配置多個顯示器。以供後面選擇使用。每個Monitor配置小節都應該使用Section“Monitor”開始,以EndSection結束。下面我們就一起來看一下配置選項:
1)Identifier、VendorName、ModelName:這三個配置項用來標識不同的顯示器,第一個名字任意寫,你自己知道就可以了,後面兩個也可以隨便新,不過寫成“unkown”最好。
2)HorizSync:設定水平掃描頻率,它的預設單位是kHz,它可以用逗號分隔開多個獨立的數值,也可以使用形如“30-64”的方式來表示一個範圍。具體的值應該根據顯示器的使用說明上的資料來寫。
3)VerRefresh:設定垂直掃描頻率,它的預設單位是Hz,表示方式與HorizSync一致,建議根據顯示器的使用說明上的資料來寫。
六、 顯示卡配置小節
設定顯示卡的型號、晶片組、晶振晶片、視訊記憶體。下面是一個配置例項:
Section "Device"Identifier "ATI Mach64"VendorName “Unknown”BoardName “Unknown”#Chipset “Generic”VideoRam 1024# Clocks 25.2 28.3EndSection
其配置選項如下:
1) Identifier:用來標識顯示卡
2) Chipset:用來標識顯示卡晶片組
3) VideoRam:用來標識視訊記憶體
4) Clocks:晶振晶片 七、 螢幕配置小節
設定將採用的XServer、顯示卡及顯示器之外,還有顯示模式、色彩深度、解析度和虛擬桌面的設定。下面是一個配置例項:
Section "Screen"Driver "accel"Device "ATI Mach64"Monitor "cpq1355"DefaultColorDepth 16Subsection "Display"Depth 16Modes "800x600" "640x480"ViewPort 0 0EndSubsectionSubsection "Display"Depth 8Modes "1152x864" "1024x768" "800x600" "640x480"ViewPort 0 0EndSubsection# BlankTime 3# StandbyTime 10# SuspendTime 30#Offtime 50EndSection
1) Driver:選擇X Server驅動,在本例中是accel
2) Device:選擇所使用的顯示卡,這裡的名字應與顯示卡配置小節的Identifier 一致
3) Monitor:選擇所使用的顯示器,這裡的名字應與顯示器配置小節的Identifier一致
4) BlankTime:設定進入螢幕保護的時間,單位為分。
5) StandbyTime:設定顯示器進入待機狀態的時間,單位為分
6) SuspendTime:設定顯示器進入掛起狀態的時間,單位為分
7) Offtime:設定顯示器關閉的時間,單位為分在這個小節中,還有Display子小節,用Subsection “Display”做為開始,用EndSubsection表示結束。每一個子小節設定一種顯示模式,在此例子中設定了兩種顯示模式(這些模式在XWindow中,可以使用“Ctrl”+“+”、“Ctrl”+“-”來切換。每個Display子小節中可以有以下配置項:
1) Depth:色深,如16代表16位色,8代表8位色
2) Modes:可以使用的解析度,如本配置中表示16位色可以使用"800x600" "640x480"兩種解析度
3) ViewPort:使用虛擬桌面時,設定起始畫面的左上角座標
4) Virtual:設定虛擬桌面,後面跟上解析度即可,如Virtual 1600, 1400就表示模擬成為1600x1400大小的桌面
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-939890/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 控制檔案詳解(轉)
- 檔案管理命令詳解(轉)
- Windows系統檔案詳解(轉)Windows
- Dockerfile檔案詳解Docker
- mtl檔案詳解
- cmake檔案詳解
- BMP檔案詳解
- LD檔案詳解
- 【轉】kafka-檔案儲存機制詳解Kafka
- oracle 跟蹤檔案和轉儲命令詳解Oracle
- java class檔案詳解Java
- JavaScript 檔案物件詳解JavaScript物件
- redis 配置檔案詳解Redis
- Class 檔案格式詳解
- haproxy配置檔案詳解
- Scala檔案操作詳解
- redis配置檔案詳解Redis
- Dockerfile檔案全面詳解Docker
- SSH配置檔案詳解
- zookeeper配置檔案詳解
- nginx配置檔案詳解Nginx
- WCF配置檔案詳解
- Java Class檔案詳解Java
- /etc/fstab檔案詳解
- Nginx配置檔案nginx.conf中文詳解(轉)Nginx
- JPEG檔案編/解碼詳解 .
- notes.ini檔案的配置引數詳解(轉)
- Nginx的配置檔案詳解Nginx
- MachO 檔案結構詳解Mac
- managed-schema 檔案詳解
- vim的配置檔案詳解
- C++ 檔案操作詳解C++
- Hibernate配置檔案詳解
- BIND配置檔案詳解(三)
- Spring 配置檔案詳解Spring
- vsftpd配置檔案詳解FTP
- struts檔案上傳詳解
- Nagios配置檔案詳解iOS