會看這篇文章的朋友應該或多或少都玩過 GNU/Linux ,對於 GNU/Linux Distribution 應該都略有聽聞,筆者從 Slackware 3.x 時代開始接觸 GNU/Linux ,後來也曾轉移到 Redhat 及 Mandrake 上頭,每個 Distribution 都有自己的特色,Slackware 可以讓你完全掌控,但是我是把 GNU/Linux / X Window System 拿來當 Desktop 的人,恐怕也很難掌握到底裝了多少軟體在我的機器上,偏偏我又是喜歡嘗試新軟體的人,所以系統常常被我搞得亂七八糟,用了一段時間便會習慣重灌。
後來改用 Redhat 之後,RPM 系統對於軟體管理確實相當方便 ( 至少跟 Slackware 比較起來 ),不過相信很多朋友也都常常遇到一種狀況,就是要安裝 『 A 』 軟體時,系統說 『 A 』 軟體需要先安裝 『 B 』 軟體,於是翻箱倒櫃把安裝光碟拿出來或是連上http://rpmfind.net/,最後終於找到了 『 B 』 軟體,然後要裝 『 B 』軟體時竟然又出現需要 『 C 』 軟體才能裝 『 B 』 軟體,好吧!為了 『 A 』就拼了,於是重複著同樣的動作把 『 C 』 軟體給找來了,接下來執行我最拿手的指令:rpm -Uvh C.rpm ,呼呼 本想就要大工告成,然後再裝 『 B 』軟體,最後安裝的是我最初想裝的 『 A 』軟體,但是系統竟然跟我說 『 A 』 軟體與 『 C 』衝突!!! 換句話必須先把 『 C 』軟體移除才能裝 『 A 』 軟體,-.-||,此時此刻真是無語問蒼天。
上頭的例子雖不常見,但是筆者要表達的是在 RPM 系統底下安裝一套軟體過程的繁雜,而且 RPM 管理方式有一些先天上的缺陷,或許現在已經有改進的方式 ( 原諒我,自從轉換到 Debian 之後就沒再關心過 RPM 系統的演進 )。 按:事實上其他 Distribution 也注意到了關於軟體升級的問題。
在一次偶然的機會下,朋友向我介紹了 Debian,我不敢保證 Debian 的軟體管理是世界第一,我也確信它也有缺點,不過最起碼筆者用起來的確減輕了許多以前遇到的痛苦。
對想嘗試 Debian 我有幾點建議:
嚴格的說最好對 GNU/Linux 要有較完整的概念,例如:GNU/Linux 檔案系統基本架構,您要了解 / 、/etc、/dev/、/usr..等等,最好也要有網路基礎觀念 ( 關於這點可以直接拜訪由網中人兄主持的 Study Area ( http://www.study-area.org/ ) ,可以讓您不用買書也能得到最佳的網路知識 )。如果您對 GNU/Linux 完全陌生,那請先買本介紹 GNU/Linux 書 ( 坊間有很多這樣的書,雖然網路上的資料垂手可得,但我還是建議新手還是買本書,畢竟書籍都是經過人有系統整理出來的資料,這會讓新手比較容易了解整體概念。
『 沒有網路的 Debian 是黑白的,有網路的 Debian 是彩色的 』,這是我了解 Debian 越久感觸越深的體認,此時此刻您可能還無法體會,但是用了 Debian 您可能就會跟我有同樣的想法了。不過即使在沒有網路的環境還是可以使用 Debian 的啦。
我的建議是最起碼也要在有 ADSL 以上的網路環境,這樣才能感受 Debian 的威力。
以上兩點當然不是絕對的,筆者僅是依照自身的經驗提供給大家的一些小建議。
現在筆者先假設各位已經安裝及使用過一種以上的 GNU/Linux Distribution ,並對 GNU/Linux 系統有基本概念、熟悉基本 UNIX 操作指令以及了解基本的網路原理。
這篇文章將分成兩大部份,第一為系統的建構,另外一部份則為系統的管理;系統的建構將會介紹如何安裝 Debian Distribution ,筆者盡量用 Step by Step 的方式讓初次安裝的人花在這裡的功夫最輕,另外系統管理的部份則會以筆者使用經驗為藍本,讓您了解到 Debian 系統的設計哲學以及學習 Debian 的方法重點在那裡。
另外筆者將以 Debian 2.2r2 ( 代號 Protato ) 為例子帶您入門,不過版本在 Debian 世界裡並不是那麼重要,為什麼呢?這個筆者會在文章第二部份裡頭作詳細的說明,請細細品嚐。
順帶一提,本篇文章僅是介紹如何讓您輕鬆踏入 Debian Distribution ,真正系統的調校是因人因時因地而異,例如,筆者以把 Debian 當作 Desktop 使用的角度出發,文中的例子將多半與個人使用有關,至於 Server 端的應用,則會以安裝及啟動某個 Service 為主,儘管是大前提是個人使用,但也不保證符合每個人需求,我想跟大家報告的是學習 Debian 的方法,而不是端出一道烹煮好的佳餚,方法學到了才是最重要的事,您說是吧。^_^
對了!還有幾項比較特別的:
我不打算教您使用光碟來安裝 Debian ,相反的您只需要準備幾張磁片 + 好的網路環境即可,充份發揮 Debian 精簡的特色。
在傳統的 Ext2 檔案系統裡頭,當我們不正常關機時,在下次開機時系統會利用 fsck 程式來檢查整個硬碟裡頭 i-node 相依狀況,如果發現不正常情形就會加以修復,但是今天的硬碟動不動就是好幾十 GB,因此掃描的時間相對也越來越長,如果只是個人使用的電腦就還好,但是面對商業伺服器而言,時間就是金錢,老闆可不希望見到白花花的銀子就這樣消耗掉。
為甚麼 Ext2 在不正常關機之後必須這樣修復呢?一般我們處理檔案的時候都會有 Cache 機制,為了增加系統效能 Ext2 會將資料 cache 在記憶體裡頭,然後在伺機真正寫入硬碟,但是一旦當系統不正常關機時記憶體裡頭的資料也跟著流失,這樣就會造成檔案遺失的結果,所以必須在下次開機時利用 fsck 程式來修復這樣的錯誤。
有鑑於此,日誌型檔案系統 ( Journaling fie system ) 便應運而生,它的原理在於有個存放在硬碟的 journal file 來紀錄檔案的處理狀況,因為是存在在硬碟裡頭,所以不用擔心不正常關機資料會遺失 ( 當然這不是絕對的 ),下次開機就可以靠 journal file 快速恢復。
目前在 GNU/Linux Distribution 中有 ReiseFS 、XFS 、JFS、Ext3 四種日誌型檔案系統,在 http://aurora.zemris.fer.hr/filesystems/ 裡頭有針對『 Ext2、Ext3、ReiserFS、XFS、JFS、VFat』檔案系統的效能評比,結果顯示 XFS 在處理大檔案時效能最佳,而 ReiserFS 則在處理小檔案部份拔得頭籌,每種檔案系統都有其優缺點,選擇那一種檔案系統是因時、因地、因事而異。
而筆者自己則使用過 ReiserFS 與 Ext3 兩種日誌型檔案系統,我把 Linux 拿來當做 Desktop 使用,所以沒有很暴力狀況發生 ( 我的意思是不像 Server 那樣會在每秒內有大量的存取動作 ) ,所以也感覺不到效能的差異,但是最明顯的是不正常關機後不會再出現類似 Ext2 作修復的漫長動作。
注意!目前 ReiserFS 仍不是 Debian 官方基本的檔案系統,筆者也僅是以自身經驗分享給大家,並沒有任何的擔保!
另外,如果您用 Debian 發行的光碟安裝,您也無法使用 ReiserFS ,因為目前 Debian 仍舊採用 Ext2 檔案系統。
如果您是 ADSL 的使用者怎麼辦?如果您有兩台電腦或是有 HOME Gateway 這種產品就好辦,先弄好一個 NAT 環境出來, NAT 裡頭的任何一台電腦安裝 Debian 的方式就跟我介紹的沒什麼兩樣。
但是我更相信有很多朋友是在只有一台電腦的情形下安裝 Debian,這時候可就不能只靠安裝磁片了,因為我們還需要 pppoe ..等 ADSL 上網相關的軟體,詳細摘要請參考 『 附錄一 : 在 adsl 環境安裝 debian 』。
喝杯茶!我們出發囉。