GRUB version 0.5.96.1 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ]
grub> root (hd0, (tab,按tab一下鍵) Possible partitions are: Partition num: 0, Filesystem type is fat, partition type 0x6 Partition num: 2, Filesystem type is ext2fs, partition type 0x83 Partition num: 4, Filesystem type unknown, partition type 0x7 Partition num: 5, Filesystem type is ext2fs, partition type 0x83 Partition num: 6, Filesystem type is fat, partition type 0xb Partition num: 7, Filesystem type is fat, partition type 0xb Partition num: 8, Filesystem type is ext2fs, partition type 0x83 Partition num: 9, Filesystem type unknown, partition type 0x82
本文檔的主要目的在于介紹手動(dòng)配置 Linux 下 XF86 的配置方法, 主要是關(guān)于如何通過(guò)修改 XF86Config 文件調整顯示器在圖形模式下的顯示分辨率和顏色深度, 以及如何通過(guò)建立符號連接修改 X Server. 另外提到一些跟圖形界面有關(guān)的網(wǎng)友常問(wèn)問(wèn)題.
一. X Window 工作方式略談
(如果你之關(guān)心如何對 X Widow 進(jìn)行設置, 可以跳過(guò)這一節. 只是理解這一節所講的知識對于理解下面的各設置步驟有一定幫助)
X Window 的工作方式跟 Microsoft Windows 有著(zhù)本質(zhì)的不同. MS Windows的圖形用戶(hù)界面 (GUI) 是跟系統緊密相聯(lián)的. 而 X Window 則不是,它實(shí)際上是在系統核心 (kernel) 的上面運行的一個(gè)應用程序.
X Window 的運行分為四層. 最底層的是 X Server(服務(wù)器), 提供圖形界面的驅動(dòng), 為 X Window 提供服務(wù). 上面的一層是用于網(wǎng)上通信的網(wǎng)絡(luò )協(xié)議 -- X 網(wǎng)絡(luò )協(xié)議. 這部分使遠程運行 X Window 成為可能. 只需要在服務(wù)器上運行一個(gè) X Server, 而客戶(hù)機 (Client) 上運行更上一層的程序, 則可以實(shí)現 X Widow 的遠程運行. 再往上的一層是稱(chēng)作 Xlib 的低層函數接口, 介于網(wǎng)絡(luò )和和基礎系統于較高層的程序之間. 應用程序的實(shí)現是通過(guò)調用這一層的函數實(shí)現的. 最頂層就是管理窗口的窗口管理器了, 也就是一般所說(shuō)的 WM (Window Manager). 在這一層的軟件是用戶(hù)都比較常接觸的, 比如 fvwm, AfterStep, Enlightment 以及WindowMaker 等等.
從上面的介紹來(lái)看, X Window 的運行是一種客戶(hù)機/服務(wù)器(Client/Server)的模式, 服務(wù)器用于顯示客運的應用程序, 又被稱(chēng)為顯示服務(wù)器(Display Server)顯示服務(wù)器位于硬件和客戶(hù)機之間, 它跟蹤所有來(lái)自輸入設備比如鍵盤(pán), 鼠標的輸入動(dòng)作, 經(jīng)過(guò)處理后將其送回客戶(hù)機. 這樣, 使用戶(hù)甚至可以在 MS Windows 的機器上運行 X Client, 截取并傳送用戶(hù)的輸入, 只是將 X Window 的屏幕輸出顯示在用戶(hù)的屏幕上. 客戶(hù)機的輸入和輸出系統跟 X 服務(wù)器之間的通信都是遵守 X 協(xié)議的.
由于本文檔的主要目的在于介紹如何設置, 因此對 X Window 不再作進(jìn)一步的介紹. 更詳細的資料可以參考有關(guān)的 HOWTO, man 頁(yè)等等.
如果你的 /usr/X11R6/bin 下面沒(méi)有上面某個(gè)文件或者多了某個(gè)文件, 不必在意, 這主要決定于你的機器的硬件. 其實(shí)一般只需要跟自己硬件相配套的驅動(dòng)即可.比如作者正在使用的機器上使用的是 3D Lab Permedia II 的芯片的顯示卡, 因此只有 XF86_3DLabs 是有作用的.
如此之多種類(lèi)的顯示適配器驅動(dòng)程序, 系統當然需要一個(gè)固定和統一的方法去訪(fǎng)問(wèn)它, 一般說(shuō)來(lái), 系統是使用一個(gè)名為 X 的符號連接去訪(fǎng)問(wèn)具體的 X Server 的.這個(gè) X 也同樣是存在于 /usr/X11R6/bin/ 目錄中, 可以使用如下命令打印他的具體指向:
具體該命令的用法, 請使用 man 命令查看其 man page (手冊頁(yè)), 或者會(huì )在本文檔的后續版本中提供詳細的說(shuō)明.
ServerFlag 段: 這個(gè)段指明了一些具體的參數, 如下:
NoTrapSignals 這個(gè)標志將使調試信號對 X Server 不起作用. 調試信號會(huì )使 X Server "轉儲核心", 把內存中有關(guān)的 X Server 的信息存儲到硬盤(pán)上, 即所謂的 "Core dump". 這樣的目的是便于對 X Server 進(jìn)行調試.
DontZap 這個(gè)標志將使 X Server 收到 "Ctrl + Alt + Back Space" 鍵組合發(fā)出的信號時(shí) *不* 停止工作. 當然一般是不建議使用的.
DontZoom 這個(gè)標志使 X Window 不能在各種圖形模式之間進(jìn)行切換. X Window 的缺省狀態(tài)是在用戶(hù)設定了多組分辨率, 刷新頻率和顏色的組合的情況下, 運行 X Window 的過(guò)程中可以通過(guò) Ctrl + ‘+‘ 和 Ctrl + ‘-‘ 兩組鍵的組合在多個(gè)圖形模式之間進(jìn)行動(dòng)態(tài)切換.
Keyboard 段: 這個(gè)段指明了 X Window 環(huán)境中所使用的鍵盤(pán)映射以及其他一些參數. 如下是作者的鍵盤(pán)配置:
Section "Keyboard" Protocol "Standard" AutoRepeat 500 5 # 指定延遲 (delay) 和 速率 (rate) # 這里的設定分別為 500 和 0 LeftAlt Meta RightAlt Meta # 使用左右 Alt 鍵作 Meta 鍵. # 關(guān)于 Meta 鍵, 希望以后能夠補充完整 ScrollLock Compose RightCtl Control XkbKeycodes "xfree86" XkbTypes "default" XkbCompat "default" XkbSymbols "us(pc101)" XkbGeometry "pc" XkbRules "xfree86" XkbModel "pc101" XkbLayout "us" EndSection
這段設置出了 XkbLayout 會(huì )影響鍵盤(pán)各按鍵的表現以外, 其他都只是一些功能上的設置, 沒(méi)有太大影響. 在控制臺模式下, 可以通過(guò) Alt + F? 在各虛擬終端間進(jìn)行切換, 在 X Widow 環(huán)境下, 必須使用 Ctrl + Alt + F? 才能夠達到這一效果.