#pragma section-numbers on
[[HTML( HOWTO:The Linux XFree86)]]
作者: Eric S. Raymond[[BR]]
譯者: J.S. Lin, , r6921068@ms.cc.ntu.edu.tw[[BR]]
v5.9, 27 October 1998
最新版本:2001-09-09
轉為 Wiki: Ping (ping 'at' pingyeh 'dot' net), 2003 年 11 月 27 日
[[BR]]----''
本文件描述如何取得,安裝,與設定 Linux 上的 X Window System (X11R6), XFree86 3.3 版. 它是一步一步設定 XFree86 於你的系統上.
''----[[BR]]
[[TableOfContents]]
= 介紹 =
X Window System 是 UNIX 系統上強大的 (有些人可能會說極龐大而且非常複雜的)
圖形化作業環境. 原本的 X Window System 程式碼是 MIT 所發展的;
從那時起商業販售者就已經使 X 成為UNIX 平台上的工業標準. 實際上,
在世界上每台 UNIX 工作站可以跑 X Window system 的各版本.
一個 MIT X Window System version 11, release 6 (X11R6)
在 80386/80486/Pentium UNIX systems 上免費,可重發行的移植版本已經在發展,
由原本 David Wexelblat
[mailto:dwex@XFree86.org dwex@XFree86.org] 所領導的程式設計師團隊.
這個版本,叫作 XFree86, 可以取得給 System V/386, 386BSD, 和其他 x86 UNIX
實作,包括 Linux. 它包含所有需要的 binaries, 搭配檔案, libraries, 以及工具.
XFree86 的完整資料是可以取得在 [http://www.XFree86.org XFree86 的網站],
在本文件, 我們將一步步的描述如何在 Linux 安裝和設定 XFree86,
但你自己將必須靠讀 XFree86 本身公開的文件(這些文件以下會討論)
來充實某些細節. 然而, 使用和熟練 X Window System
是遠超出本文件範圍
--- 基於這個目的,你應該在眾多討論使用 X Window System 的好書中,取一本來看.
== 其他資訊來源 ==
[[Anchor(ss1.1)]]
如果你以前從未聽過 Linux, 那裏面有一些關於這系統[X Window System]的基本資料.
要找到這些資料的最好地方是在 Linux Documentation Project 的
home page 即
[http://sunsite.unc.edu/LDP http://sunsite.unc.edu/LDP].
你能在那找到該文件之最新, 最新的版本在
[http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html]
== 這文件的新版本 ==
[[Anchor(ss1.2)]]
Linux XFree86 HOWTO 的新版本將會定期性地張貼在
[news:comp.os.linux.help comp.os.linux.help] 和
[news:comp.os.linux.announce news:comp.os.linux.announce] 以及
[news:news.answers news.answers]. 他們也將會更新到各種 Linux WWW 和 FTP 站,包括
LDP home page.
你總是能見到本文件的最新版本在全球資訊網,
藉由這個 URL
[http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html].
== 回函與訂正 ==
[[Anchor(ss1.3)]]
如果你對這文件有問題或評論, 請自在的寄封信給 Eric S. Raymond,
[mailto:esr@thyrsus.com esr@thyrsus.com].
我很歡迎任何建議或批評. 如果你在文件中找到錯誤.
請讓我知道,使得我能夠在下個版本修正它. 謝謝.
請 不要 寄信給我, 問些如何使你的顯示卡和顯示器能在 X 下, 正常運作的問題.
這個 HOWTO 的意圖是快速,輕易的指引給 一般
安裝, 它使用新的互動式設定器[interactive configurator].
如果你發生問題,瀏覽一下 XFree86 Video Timings HOWTO,
[http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html].
這是 XFree86's `Videomodes.doc' 檔案之最新的 HTML 版本.)
那文件記錄我所知道, 關於解決設定上困難的事情.
如果它不能幫得上你,那我也幫不上.
= 硬體需求 =
在 XFree86 3.3版, 以下的顯示晶片組是被支援的. 這文件包括你的顯示介面卡
應該說明所使用的晶片組. 如果你在市場上拿到很新的顯示卡,
或買一台新機器而附有顯示卡, 應要求販售商正確的指出該顯示卡是哪家製造,型號,
及晶片組. 這可以要求販售商為你去打技術支援電話; 一般販售商會樂意這麼做.
大部分 PC 硬體販售商會說這個顯示卡是 ``
在你的系統上. 解釋一下你的軟體 (提到 Linux 和 XFree86!)
並沒有支援所有顯示晶片組, 所以你必須要有詳細的資料.
你也能得知你的顯示卡藉由執行 SuperProbe 程式, 它包含於
XFree86 套件. 這在以下會有更詳盡的說明.
以下標準 SVGA 晶片組有被支援:
* Tseng ET3000, ET4000AX, ET4000/W32, ET6000
* Western Digital/Paradise PVGA1
* Western Digital WD90C00, WD90C10, WD90C11, WD90C24, WD90C30, WD90C31,
WD90C33
* Genoa GVGA
* Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000,
TVGA9000i, TVGA9100B, TVGA9200CX, TVGA9320, TVGA9400CX, TVGA9420,
TGUI9420DGi, TGUI9430DGi, TGUI9440AGi, TGUI9660XGi, TGUI9680
* ATI 18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3,
68800-6, 68800AX, 68800LX, 88800GX-C, 88800GX-D, 88800GX-E,
88800GX-F, 88800CX, 264CT, 264ET, 264VT, 264VT2, 264GT
* NCR 77C22, 77C22E, 77C22E+
* Cirrus Logic
CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429,
CLGD5430, CLGD5434, CLGD5436, CLGD5440, CLGD5446, CLGD5462,
CLGD5464, CLGD6205, CLGD6215, CLGD6225, CLGD6235, CLGD6410,
CLGD6412, CLGD6420, CLGD6440
* OAK OTI067, OTI077, OTI087
* Avance Logic ALG2101, ALG2228, ALG2301, ALG2302, ALG2308, ALG2401
* Chips Technologies
65520, 65530, 65540, 65545, 65520, 65530, 65540, 65545, 65546,
65548, 65550, 65554
* MX MX68000, MX680010
* Video 7/Headland Technologies HT216-32
* SiS 86C201, 86C202, 86C205
* ARK Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT
* RealTek RTG3106
* Alliance AP6422
* Matrox MGA2064W and Mystique cards
* NVidia/SGS Thomson NV1, STG2000
以下具有加速特性的 SVGA 晶片組也被支援:
* 8514/A (and true clones)
* ATI Mach8, Mach32, Mach64
* Cirrus CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429,
CLGD5430, CLGD5434, CLGD5436, CLGD5440, CGLD5446, CLGD5462,
CLGD5464.
* S3 86C911, 86C924, 86C801, 86C805, 86C805i, 86C928, 86C864, 86C964,
86C732, 86C764, 86C765, 86C868, 86C968, 86C325, 86C988
* Western Digital WD90C31, WD90C33, WD90C24A
* Weitek P9000
* IIT AGX-014, AGX-015, AGX-016
* IBM XGA-2
* Tseng ET4000/W32, ET4000/W32i, ET4000/W32p, ET6000
* Ark Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT
* MGA2064W
使用這些晶片組的顯示卡有被支援所有匯流排型式[bus type],包括 VLB 和 PCI.
除了 Avance Logic, MX 和 Video 7 晶片組只有支援 256 色模式,
以上其他全都同時有支援 256 色和 單色模式. 若你的顯示卡裝有足夠的 DRAM,
以上晶片組很多都有支援每單位像素[pixel] 16 及 32 位元[bits] 模式
(特別是一些 Mach32, P9000, S3 和 Cirrus boards). 通常的設定是每單位像素 8 位元
(亦即 256 色).
單色的伺服程式[monochrome server]也支援 generic VGA cards,
Hercules monochrome card, Hyundai HGC1280, Sigma LaserView,
和 Apollo monochrome cards. 在 Compaq AVGA 的部分,
只有 64k 顯示記憶體是有支援給單色伺服程式, 而 GVGA 還未對超過 64k 做測試.
這列表毫無疑問地將會隨時間而擴增. XFree86 目前版本的 release notes
應該會包含完整所支援顯示晶片組的列表.
XFree86 發展者所面臨的一個問題是,
某些顯示卡製造商為能定出驅動該卡所使用的時脈頻率,而使用非標準機制.
這些製造商中,有些要嘛就沒有公開,如何程式設計這張卡的規格;
要嘛他們就是要求發展者簽一張決不可洩露的聲明書,以取得該資料.
這明顯地限制 XFree86 軟體的自由散佈, 有些事是 XFree86 發展團隊所不樂意去做的.
有好長的一段時間,這是個問題發生在 Diamond 所製造的某些顯示卡上, 但當 XFree86
的 3.1 版時, Diamond 已經開始與這個發展團隊合作,而釋出免費的驅動程式給這些卡.
在 Linux 下 XFree86 所建議架設是一台 486 或更好, 而且至少搭配 8 megabytes RAM,
和具有上述所列出晶片組的顯示卡. 為了最好的表現, 我們建議使用加速卡,
像是張 S3-chipset card. 你應該檢查對於 XFree86 的文件,
而且在決定冒險一試的心態下,購買昂貴的硬體之前,請先檢查你的特定卡是有支援的.
一方面值得一提的是, Matt Welsh (這個 FAQ 的發起人) 的個人 Linux system 是一台
486DX2-66, 20 megabytes RAM, 裝配有 2 megabytes DRAM 的 VLB S3-864 chipset card.
他在該機器上跑 X benchmarks ,也有在 Sun Sparc IPX workstations 上跑.
Linux system 大略是比 Sparc IPX 快 7 倍 (好奇的窺探, 在 Linux 下而用該顯示卡的
XFree86-3.1 大約跑出 171,000 xstones; Sparc IPX 則大約是 24,000). 一般而言,
在使用加速 SVGA 卡的 Linux system 下的 XFree86 比起建立在商業上的
UNIX workstations (它通常採用簡單的 framebuffers 來圖形顯示)
會有較佳的表現.
你的機器至少需要 4 megabytes 的 physical RAM, 和 16 megabytes
的 virtual RAM (舉例而言, 8 megs physical 和 8 megs swap).
記住你有的 physical RAM 越多,系統當發生記憶體短缺而要交換[swap]存取硬碟機會越少.
因為 交換 本質上是慢的(磁碟相較記憶體是蠻慢的), 要流暢地跑 XFree86 的話,
有 8 megabytes RAM 或更多是必要的. 16 megabytes 更好.
具有 4 megabytes 的 physical RAM 的系統可能比跑 8 megs 或更多的系統慢
許多 (甚至可高達 10 倍).
= 安裝 XFree86 =
很有可能,你取得的 XFree86 是 Linux 發行套件的一部分,
在那種情形, 分開下載該軟體是沒有必要的. 在那情形下,你可以略過這一節.
XFree86 的 Linux 二元碼版本可以在許多 FTP 站找到. 在 [ftp://ftp.xfree86.org/pub/XFree86/current/binaries/Linux-ix86 XFree86 站],
在做任何其它東西之前,首先下載且執行 `preinst.sh' 的 shell script.
這可以告訴你,在你繼續你的安裝之前,你需要在妥當位置有關的先決要素.
如果你直接下載 XFree86, 這個列表列出在 XFree86-3.3 軟體套件中的檔案.
以下 server 之一是必需的:
X338514.tgz
Server for 8514-based boards.
X33AGX.tgz
Server for AGX-based boards.
X33I128.tgz
Server for the Number Nine Imagine 128.
X33Mach32.tgz
Server for Mach32-based boards.
X33Mach64.tgz
Server for Mach64-based boards.
X33Mach8.tgz
Server for Mach8-based boards.
X33Mono.tgz
Server for monochrome video modes.
X33P9K.tgz
Server for P9000-based boards.
X33S3.tgz
Server for S3-based boards.
X33S3V.tgz
Server for the S3 ViRGE and ViRGE/VX (considered beta)
X33SVGA.tgz
Server for Super VGA-based boards.
X33W32.tgz
Server for ET4000/W32-based boards.
如果你不知道要取哪一個,就取 VGA16 server,X33VGA16.tgz.
不管怎樣,你都要下載這一個,因為你將需要它在下個步驟去執行自動設定工具.
以下全部檔案都是必須的:
preinst.sh
Pre-installation script
postinst.sh
Post-installation script
X33bin.tgz
The rest of the X11R6 binaries.
X33cfg.tgz
Config files for xdm, xinit and fs.
X33doc.tgz
Documentation.
X33man.tgz
Manual pages.
X33fnts.tgz
75dpi, misc and PEX fonts
X33lib.tgz
Shared X libraries and support files.
X33set.tgz
XF86Setup utility
X33VG16.tgz
Server for VGA/EGA-based boards.
以下檔案是選擇性的:
X33f100.tgz
100dpi fonts
X33fcyr.tgz
Cyrillic fonts
X33fnon.tgz
Other fonts (Chinese, Japanese, Korean, Hebrew)
X33fscl.tgz
Scalable fonts (Speedo and Type1)
X33fsrv.tgz
Font server and config files
X33prog.tgz
X header files, config files and compile-time libs
X33lkit.tgz
X server LinkKit
X33lk98.tgz
PC98 X server LinkKit
X33nest.tgz
Nested X server
X33prt.tgz
X print server
X33vfb.tgz
Virtual framebuffer X server
X33ps.tgz
PostScript version of the documentation
X33html.tgz
HTML version of the documentation
那個 XFree86 目錄應該包含有目前版本的 release notes 在 RELNOTES.
對於安裝細節,可查閱於該文件[RELNOTES].
所要安裝 XFree86 的工作的是取得以上檔案, (以 root 身分) 建立
/usr/X11R6 目錄, 和從 /usr/X11R6 解開那些檔案如下列指令:
{{{
gzip -dc X33bin.tgz | tar xfB -
}}}
記住這些 tar 檔案是相對於 /usr/X11R6 目錄所包裝起來的,
所以很重要的是要在那裏解包包裝.
你需要確定 /usr/X11R6/bin 是有設在你的 path 中.
這可以藉由編輯你系統內定的 /etc/profile 或 /etc/csh.login
(此乃根據你,或在你系統中的其他使用者,所使用的 shell 而定).
或者你可以簡單地修改 .bashrc 或 .cshrc
(視你的 shell 而定) 來把該目錄加入你個人的 path .
你也需要確定 /usr/X11R6/lib 能被 runtime linker ld.so 找到.
為了這樣,加這行
{{{
/usr/X11R6/lib
}}}
到這個檔 /etc/ld.so.conf, 和以 root 身分去執行
/sbin/ldconfig,
= 設定 XFree86 =
== 一般設定 ==
[[Anchor(ss4.1)]]
以前,要設定好 XFree86 以便能使用你的滑鼠, 鍵盤, 顯示器, 和顯示卡,
是辛苦的差事, 需要大量的親自動手去設定和嚐試調整[hand-hacking]
一個很複雜的設定檔案, 那可說是一種不可言傳的藝術.
現在不再需要了; 在3.2/3.3版後,使這個過程幾乎沒什意義了.
你所要做的是開啟 XF86Setup 程式.
這程式乃依賴現今所有新出貨而且搭配具 EGA/VGA 能力之顯示器的PC硬體情況而定.
它採用 VGA16 server 而且利用它以最低階共通性 640x480 模式來開啟 X.
然後它執行互動式程式,它帶你經過連續五個設定面板 -- mouse, keyboard,
(video) card, monitor, 和 `other' (各式各樣的 server 選項). 全部過程相當簡單.
(如果你是用 Red Hat Linux, 你可以使用另一個叫作 xf86config 程式.
它的作用非常像是 XF86Setup ,但是其本身不是使用 X 介面與 VGA16 server.)
有一小點要記住的是,如果你像大多數人使用目前的PC, 你的鍵盤實際上是 XF86Setup
所呼叫的 `Generic 102-key PC (intl)' 而不是預定的 `Generic 101-key PC'.
如果你選擇預定的(101), 在你鍵盤[keyboard]的極右邊(數字及其相關
[numeric keypad and friends])上的按鍵群[key cluster]可能會沒有作用.
如果你不確定你顯示器的型式[monitor type],你可以連續試試它所列出的型式.
就依你的習慣由上往下試(較上面的選項所包含的是較低 dot-clock
速度, 而且對硬體要求也比較低).
如果發生了混亂或嚴重地扭曲變形[distorted]的圖形時,
請往回試[Back off]. 小部分的扭曲變形 (圖形稍太大,稍太小,或稍偏離中心)
不是什麼大問題; 你是可以馬上藉由微調[fine-tuning]此 mode 來修正.
再者, 當程式打開 xvidtune 允許你去調整[tweak]你的顯示模式[video mode],
別讓初始的警告視窗,使你感到緊張. 現在多頻顯示器[multisync monitors]
(不像他們以前是用定頻的) 不會因為用這方式而就輕易損壞.
XF86Config 可以假設你的滑鼠裝置是在 /dev/mouse.
如果你發現這沒作用時,你可能需要連結 /dev/mouse
到滑鼠實際所在 /dev/ca[01] 那. 如果你發現當
{{{
gpm
}}}
正在執行,而 XFree86 給你一個 "mouse busy" 的錯誤訊息時,
那你則需要連結到 /dev/ttyS[01] 來取代.
設定的過程操作有選定符合你的顯示卡一般型態的 server (像是 XF86_VGA16,
XF86_Mach64, or XF86_S3) 以及設定 XF86Config 檔案,
而 server 開始啟動時會讀取該檔中的你安裝時已指定的特殊參數.
XF86Config 的所在位置會隨時你的 OS 不同而變,
但有個地方可找找看是在 /etc/X11.
在較早的 XFree86 版本, XF86Setup 會直接將 `X' 指令連接所選擇的 server.
在最近的版本, 取而代之的是將 `X' 連接到叫 Xwrapper 的 set-user-id wrapper 程式.
這想法是所有的 setuid root stuff 都落在 Xwrapper 之中,
所以 server 就不必在用 setuid root.
== 解決困難 ==
[[Anchor(ss4.2)]]
當你剛開始開啟 X server, 有些項目偶爾會沒有設定很正確.
這總是幾乎會由你的設定檔案中的一些問題所引起的.
通常在是顯示器的 timing values 不正確, 或顯示卡的 dot clocks 設定不正確.
少數問題可以藉由 xvidtune 來解決; 當螢幕上實在是混亂不清楚時,通常是表示
你需要回到 XF86Setup 而選擇功能比較低的顯示器型式[monitor type].
如果你的顯示好像捲曲[roll], 或邊邊模糊不清[fuzzy], 這很清楚地表示顯示器的
timing values 或 dot clocks 是錯的. 再者,
要確定你是正確地指出你的顯示卡晶片組, 在 XF86Config 中的
Device 段落之其它項目也是如此.
絕對要確定你是使用正確的 X server ,而且 /usr/X11R6/bin/X 有符號連結
[symbolic link]到這個 server.
如果發生其它所有失敗的情況, 試試 ''赤裸地[bare]'' 開啟 X; 也就是,
使用像這樣的指令:
{{{
X > /tmp/x.out 2>1
}}}
然後你可以砍去 X server (使用 ctrl-alt-backspace 鍵的組合)
而且檢查 /tmp/x.out 的內容. X server 會報告任何警告及錯誤---舉例,
如果你的顯示卡沒有一個 dot clock 可相符合你顯示器所支援的模式.
記住你可以使用 ctrl-alt-numeric + 和 ctrl-alt-numeric -
來切換在 XF86Config 中的 Screen 段落的 Modes 行
所列出的顯示模式. 若最高解析度模式不能看起來很適當,試試切到較低的解析度.
這至少會讓你知道你的 X 設定這部分是正確的運作.
再者, 檢查一下你顯示器上的垂直與水平之大小/對準旋紐.
在很多情況下,當 X 剛開啟時, 這些是需要調整的. 舉個例子,
如果顯示器好像有點偏一邊時, 通常你能夠使用顯示器的控制來修正這個.
USENET 的 newsgroup comp.windows.x.i386unix 主要是在討論有關 XFree86,
comp.os.linux.x 也是. 看一下 newsgroup
那些與你的顯示卡有關的文章也許是個好主意---你也許剛好看到某些人跟你有相同的問題.
== 自定設定 ==
[[Anchor(ss4.3)]]
如果你的顯示器能支援 1600x1200 -- 而用 XF86Setup
來安裝之最高所能夠支援的解析度是 1280x1024,
那麼你會需要親自動手去嘗試調整你的 X 之設定,以便取得最佳化的表現.
如果基於這個理由或其它理由, 而你想要親自動手去嘗試調整你的顯示設定,
去看一下 LDP 的 XFree86 Video Timings HOWTO,
[http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html].
(這就是 XFree86
的 `Videomodes.doc' 檔案之最新的 HTML 版本.)
== 使用 16-位元 的顏色 ==
[[Anchor(ss4.4)]]
根據內定的, X 使用 8-位元 色深[color depth]而有256色. 為避開這種限制,
很多應用程式配置他們自己的色彩對應圖[colormap],導致瞬間顏色轉換,
當游標在兩個各擁有自己的色彩對應圖之視窗移動時.
Arena WWW 瀏覽器就是這樣子.
如果你想要使用先進的圖形化的應用程式,256色也許不足夠.
你可能需要有 16-位元 色深 (65,536 顏色). 但要注意的是,
不是所有應用程式都要工作在 16-位元 顏色下的.
你能簡單地使用 16-位元 的色深而有 65K 的不同色,
藉由開啟 X 時,用以下指令
{{{
startx -- -bpp 16
}}}
或者將下列這行
{{{
exec X :0 -bpp 16
}}}
擺進你的 .xserverrc 檔案內. 然而,為了使這使能正常工作, 你需要有
{{{
screen
}}}
段落在你的 XF86Config 檔案中:
{{{
DefaultColorDepth 16
}}}
如果你使用 xdm,你可能需要改變 Xservers 檔案, 其大概位置是在
/etc/X11/xdm/. 典型的設定檔就只有一行, 看起來就像這樣
{{{
:0 local /usr/X11R6/bin/X
}}}
加上
{{{
-bpp 16
}}}
到這 startup 選項:
{{{
:0 local /usr/X11R6/bin/X -bpp 16
}}}
再者,你會需要把色深 16 (bits)的顯示加入你的 X 設定檔的 `screen' 段落部分.
一般你可以直接複製 8-bit顯示部分,而改變色深大小.
較多顏色要你的顯示卡在相同的時間內能轉換成更多資料. 如果你的顯示卡不能應付,
那麼就是解析度[resolution]或是更新率[refresh rate]必須要降低.
XFree 內定的是降低解析度. 如果你要保持解析度而降低更新率,
你必須新加入一行適當的 Modeline 到你的 XF86Config 檔案中,
其定義具有最低更新率下的解析度.舉個例子, 取代舊值
{{{
Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
}}}
換成
{{{
Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync.
}}}
這裏的魔術數字 75 和 65 是各個時脈率[clock rates], 那些是你找到 X 記錄在你的
.X.err 檔案裏的. 查詢一下在 XF86 文件的 monitors 檔案,有關在 16 位元色深下
最適合你的顯示卡能夠傳送最大時脈率的 Modelines.
= 執行 XFree86 =
當你的 XF86Config 已設定, 你準備開啟 X server 試用一下, 請確定
/usr/X11R6/bin 有設在你的 path 中.
開啟 XFree86 的指令是
startx
這是 xinit 的前端介面[front-end](在其他 UNIX 系統,你會習慣使用
xinit).
這指令將會開始 X server 而且執行在你根目錄[home directory]下之
.xinitrc 檔案內所找到的指令. .xinitrc 只是個包含所要執行
X clients 的 shell script. 如果這個檔案不存在, 那麼系統內定的
/usr/X11R6/lib/X11/xinit/xinitrc 將會被使用.
一個標準 .xinitrc 檔案看起像這樣:
{{{
#!/bin/sh
xterm -fn 7x13bold -geometry 80x32+10+50
xterm -fn 9x15bold -geometry 80x34+30-10
oclock -geometry 70x70-7+7
xsetroot -solid midnightblue
}}}
這個 script 將開啟兩個 xterm clients, 一個 oclock,
而且設定根視窗[root window](背景)的顏色成 深藍色[midnightblue].
然後它開啟視窗管理程式 fvwm2. 注意 fvwm2 是用 shell 的
exec 述句[statement]所執行的; 這造成 xinit
程序[process]被 fvwm2 取代.
一旦 fvwm2 程序離開, X server 將關畢.
你可以使用 root 表單[menus] 來使 fvwm2 離開: 在桌面背景上放開 mouse
的第一個按鍵---這將出現下拉表單,那將讓你可以離開 Exit Fvwm2.
確定在 .xinitrc 中的最後面的指令是以 exec為開頭的,
而那不會被放在背景執行的 (而在那行後頭,沒有再接著什麼動作).
否則, X server 關畢瞬間, 將會再去執行 .xinitrc 檔案中的 client.
此外, 你亦可以按 ctrl-alt-backspace 之組合鍵而離開 X.
這會直接砍掉 X server, 離開視窗系統.
以上是非常,非常簡單的桌面設定. 要跑許多好程式及設定是可以在你的
.xinitrc 檔案中稍加修改即可做到.
如果你是新接觸 X Window System 作業環境; 我們強烈建議你選一本好書,
像是 Niall Manfield 著作的
The X Window System: A User's Guide(Addison-Wesley 1990).
使用與設定 X 實在是比較深入所以很難能涵蓋在這. 看一下 xterm,
oclock, 和 fvwm2 的 man pages, 就從這資料開始吧.
== 使用的條件 ==
[[Anchor(ss5.1)]]
本文件 1996 年的版權歸屬於 Eric S. Raymond. 你可以自由地使用, 散布, 與複製, 只要你:
* 沒有略過或變更這個版權註明.
* 沒有略過或變更這個版本序號及日期.
* 沒有略過或變更本文件所指到的目前 WWW 版本.
* 就像這樣清楚地標上任何濃縮或變更的版本.
這限制目的是保障一些潛在的讀者, 避免看到的是舊有的或損壞的版本.
如果你認為你有例外的情況, 可以向我詢問一下.
== 感謝 ==
[[Anchor(ss5.2)]]
This document was originated by Matt Welsh in the dim and
backward abysm of time. Thanks, Matt!
= 翻譯 =
*
[http://www.pluto.linux.it/ildp/HOWTO/XFree86-HOWTO.html 義大利語]
*
[http://www.lugos.si/delo/slo/HOWTO-sl/XFree86-HOWTO-sl.html 斯拉維尼亞語]
* [http://meta.mioc.hr/XFree86-KAKO.html 克羅埃西亞語]