Linux 的 LiveCD 發行版本已經有若干年的歷史,但是近一兩年這種發行版本的數量已經增加了好幾倍。現在的大部分專用 LiveCD 都起源於 LinuxTag 的 Knoppix 發行版本,那是個非常成功的發行版本。新奇的 LiveCD 發行版本 —— 一般來講很像新的 Linux 發行版本 —— 為不同的用戶群包裝了不同的軟件集,而且,為了體現它們的創建者的思想,它們也包裝了微調配置和設置細節。
當前,就算是沒有幾百種,也有幾十種可用的 LiveCD 發行版本;顯然,我不能在本文中涉及所有這些發行版本。最受關注的 LiveCD 可能是特意用來向新用戶展示 Linux 的通用http://edu.itbulo.com/work/'>辦公軟件包。不過,此外還有其他的更為專用的發行版本,比如用作系統群集、急救 CD、防火牆或安全工具。在很多情況下,更為專用的發行版本也會更小,因為它們捨棄了大部分通用的工具。
從 CD 引導 Linux
在本文中,我介紹了四個常見的通用發行版本:Knoppix、Slax、Mepis 和 GoboLinux。不過,盡管大部分情況下最後一個發行版本是用於 辦公/網絡/游戲 的通用的發行版本,但是,它的創建在很大程度上是為了論證關於文件系統設計的一些新穎想法。我還介紹了三個更為專用的 LiveCD:Feather Linux 是通用的,但是非常小;EVMix 基於 StrongBox,引入了 EVM2003/Open Voting Consortium 項目的大部分專用軟件,我正在參與那個項目;IPCop 是另一個小型的 LiveCD,致力於創建基於 Linux 的防火牆。
對於這些發行版本中,其中大部分我將在它們各自的章節中對其進行描述。不過,在這裡我將對 IPCop 進行簡短的評論。我興奮地使用這個只有 22 MB 的小巧 ISO 來體驗一個小型的、專用的 Linux LiveCD。不幸的是,在嘗試引導 IPCop 時,我有些失望了;不是發行版本本身的問題,而是我的期望問題。IPCop 僅僅名義上是一個 LiveCD 發行版本 —— 雖然它 確實 引導進入一個 Linux 系統,但是在那裡您可以真正做的唯一的事情就是將系統安裝到硬盤上。就此而言,IPCop 類似於任何其他可安裝的 Linux 發行版本 —— 那些發行版本大部分也可以讓您選擇一個最小化的 shell 來完成管理功能。IPCop 中的屏幕截圖功能令人關注,但是,當發現需要使用我的硬盤驅動器以後,我覺得更深入的測試超出了本次評論的范圍。我的預感是,有很多其他大肆宣傳的“LiveCD”也是像這樣徒有其名。
順便說一句,在本次評論中,我所尋找的是明顯的或者容易去做的內容 —— 的確,除了我努力去完成的內容以外,其他的事情也是可能的。我特別評論的話題包括,一個發行版本是否可以將兩次引導間的配置方便地保存下來,或者是否可以將其自身安裝到硬盤驅動器上。我相信,只要付出足夠多的體力勞動,我就可以在所有發行版本中完成那些事情,不過,我尋找的是執行那些動作的重要菜單項(menu item)或指令。
Knoppix 3.4
Knoppix 是最有名的 LiveCD 發行版本,所以,作為一個基礎,首先對它進行研究。Knoppix 3.4 (2004-05-17)將盡可能多的內容壓縮到一張 CD 上,最終得到一個 690 MB 大小的 ISO 映像(一定要買 700 MB 的 CD-R,而不要買 650 MB 的)。從它的大小就可以看出來,Knoppix 捆綁了大量的工具,既有面向開發人員的,也有面向辦公用途的。我所研究的工具都是當前流行的,但並不是尖端的(bleeding edge):Linux 內核 2.4.26;KDE 3.2.2;OpenOffice.org 1.1.1;Gimp 2.0;Python 2.3.4c1。 Knoppix 傾向於附加功能重復的程序,這些可能會給新用戶帶來迷惑:有十個文本編輯器,我應該使用哪個?我應該使用 Mozilla 還是 Konqueror 進行浏覽?另一方面,那些都是經驗豐富的用戶所非常樂於使用的; Knoppix 堅持使用 OpenOffice.org 作為它的辦公套件,而捨棄了一些發行版本中所采用的 KOffice。
可以直接引導 Knoppix,不需要用戶做任何事件就可以得到一個可以使用的 KDE 桌面。我的所有硬件(幾年前的舊機器上的)都恰當地識別了出來,包括我的 1280x1024 的平板顯示器以及與我的 nVidia TNT2 顯卡相匹配的模式。默認的用戶是 knoppix,但是我發現不需要密碼就可以執行 su
—— 可能是安全與用戶友好性的折衷吧。只需要執行 passwd
就可以解決這一問題,因為系統中永遠不應該存在沒有密碼的帳號。
我試驗的所有通用發行版本所使用的窗口管理器都是 KDE(實際上,版本都是 3.2.2)。配置細節上有一些不同,比如哪些圖標安放在面板上,選擇是哪種主題,使用的是哪種點擊模式(單擊/雙擊)。我並不喜歡 Knoppix 的選擇:單擊、Keramik 主題;但是這純粹是一個個人問題,很容易改變。Knoppix 也附加了一些其他的窗口管理器,不過它們之間的切換好像會破壞 X11 配置。
至於更多功能上的問題,Knoppix 引入了一個優秀的而且令人矚目的“Save Knoppix Configuration”工具。您可以按意願將設置部分保存到軟盤或者硬盤分區上:如主目錄文件、網絡設置、X11 配置、打印機等等。Knoppix 還將我的所有硬盤分區自動掛載到桌面上,包括測試用的 OS/2 桌面上的 HPFS 分區。有一些可以在運行的系統上 “Install Software”的選項,但是除了這個有限的列表以外,如果我嘗試添加其他應用程序,apt-get 就會指出安裝目錄只讀的錯誤(對我來說沒有顯而易見的可以解決這一問題的其他方法)。與一些發行版本相反,Knoppix 沒有 提供將其自身安裝到硬盤驅動器上的重要選項。
Mepis 2004
Mepis 是一個類似於 Knoppix 的發行版本,但是它具備雙重用途,既可以作為一個可安裝的發行版本,也可以作為一個 LiveCD。與 Knoppix 類似,Mepis 也是一張幾乎全滿了的 CD,而且,實際上它還附帶了額外第二張的 CD(不是直接可用的)。Mpeis 上的工具集與 Knoppix 上的那些大部分是相同的。 LiveCD 為開發人員考慮的較少,而為辦公用戶考慮得更多。例如,LiveCD 上同時包括了 OpenOffice.org 和 KOffice;但是包括的程序員所用的編輯器和開發用的 IDE 很少。
與 Knoppix 相反,Mepis 引入了一個將其自身安裝到硬盤驅動器的非常好的應用程序,但是卻缺少保存 LiveCD 配置的工具以及 LiveCD 環境運行時動態安裝額外軟件的工具。誠然,Mepis 的目標是讓您在安裝之前可以進行試驗,而不是創建一個根本不需要任何持久安裝的輕便的運行期環境。不過,不經修改的 Mepis LiveCD 環境就已經是很好用的了,您可以方便地將修改過的文檔或文件保存到其他媒介。Mepis 不會自動掛載它發現的所有硬盤驅動器分區,但是在它的桌面上有用來掛載分區的圖標(不需要用戶了解 mount
命令的參數)。和 Knoppix 一樣,Mepis 可以恰當地掛載我的 HPFS 分區(只讀)和 ext2/3 分區(讀/寫)。
Mepis 的引導順序與 Knoppix 稍有不同。更好的方面體現在,Mepis 為您提供了一個可導航的本文菜單來選擇內核的版本(我試驗的是 2.6,但是 2.4 也是可以使用的)。選擇屏幕分辯率和一些其他配置選項的能力(也是要求)難言其利弊。全部以友好的可滾動菜單的形式給出,但是 Knoppix 根本不需要詢問這些。另一方面,其余發行版本大部分都假定我希望以 1024x768 的分辯率來運行 X11,而不是 1280x768 —— 我寧願自己來選擇,而不願讓 CD 弄錯它。Mepis 中的一個小問題是,它設置的 root 和 demo 帳號的密碼在引導過程中並沒有顯示出來,也沒有記錄在頂層的 README 文件中。我只嘗試了幾次就猜出了 root 密碼是“root”,但這畢竟是猜測出來的。
SLAX 4.1.2
SLAX 是一個基於 Slackware 的 LiveCD,它的大小相對較小,可能是與 Slackware 的原則一致。 SLAX 4.1.2 是一個 188 MB 的 ISO,這個 ISO 顯然是足夠小的,可以寫入到一張 8 厘米直徑的小型光盤中(有意如此)。SLAX 很好地選擇了一組面向公辦和家庭用戶的軟件,這很大程度上是通過消除更大的發行版本中的冗余而實現的。例如,SLAX 為您提供了 KOffice,而不提供 OpenOffice.org,為您提供了 Konqueror,而沒有提供 Mozilla。它也沒有提供 Python、Perl 或者 Ruby —— 它的目標用戶顯然不是開發人員。
引導 SLAX 是非常簡單的。和 Knoppix 一樣,它沒有使用引導選項而是使用了開關,在它開始默認的引導之前幾秒鐘,您可以在 boot:
提示符中輸入這些開關。它使用的是 2.4 內核。完成基本的 Slackware 引導序列後,SLAX 顯示出 root 密碼(“toor”)並說明您可以在命令行中啟動的程序:(使用 gui
啟動 KDE;使用 guifast
啟動 Fluxbox;midnight commander;使用回退幀緩存的 X11;將配置的設置保存到軟盤或從軟盤恢復)。
輸入 gui
後,我發現了第一個小問題。我只有一個 1024x768 的屏幕。怎麼辦?我知道去修改 /etc/X11/XF86Config 來設置新的分辯率,但是新用戶可能不會想到這一點。我還發現 gui
將可以接受一個 --help
開關來指引我使用 X11 分辨率開關。這些對於不熟悉 Linux 的人來說都不是顯而易見的。不過算了,這 是 Slackware。
進入了 X11 和 KDE 之後,我著實為其配置選項所吸引。我也喜歡 SLAX 選擇的 Plastik 主題(盡管與 WinXP 有些類似)和桌面上雙擊方式的行為,而且在 Konqueror 中我感覺更為自然。我還發現了面板上的自定義圖標,值得我們以稍微輕松的態度去看待 —— 尊重一個事實,它們大部分用於多媒體、IM、游戲和 Web 浏覽(那個設置可能是來自其他某