鳥哥的 Linux 私房菜
from http://linux.vbird.org/
基本的學習流程 * 先從 Linux 的安裝與指令學起:
沒有 Linux 怎麼學習 Linux 呢?所以好好的安裝起一套你需要的 Linux 吧!雖然說 Linux 的 distributions 很多,不過基本上架構都是大同小異的, 差別在於介面的親和力與套件的選擇不同罷了!所以,選擇一套你喜歡的就好了, 倒是沒有哪一套特別好說~~
* 瞭解 Linux 的檔案架構與權限概念:
這個重要!由於不同的權限設定會妨礙你的使用者的便利性,但是太過於便利又會導致入侵的可能! 所以這裡需要瞭解一下你的系統呦!
* 多接觸文字介面:
盡量以文字介面學習一些基本的 Linux 使用技巧,雖然一開始進度較慢,但是熟悉之後, 您未來的學習之路將是以指數增加的型態來增長您的 Linux 技術呦!
* 認識與 BASH 相關的咚咚:
既然要玩文字介面,那麼 BASH shell 這個玩意兒,與裡面的『正規表示法』、 『管線命令』與『命令重導向』等等,真的需要瞭解比較好呦!此外,為了幫助您未來的管理, shell scripts 也是挺重要的!
* 學習一下如何使用 Shell 與 Shell scripts 的寫法:
這個是稍微進階了點,不過也建議學一學呢!對於管理 Linux 主機的用途很大呦!
* 至少一定要瞭解套件管理員:
記得將最重要的套件管理員,亦即 RPM 與 Tarball 的技巧完整的建立概念, 這將是您相當重要的一門課!
* 實作的重要性:
在看過書本或者網路上的相關介紹之後,請千萬記得自己實作看看, 沒有任何事情比自己實作學的更快的!此外,不要盡信書本或者網路上的教學, 自己親身去理解,才能體會箇中的含意與技巧。
------------------------------
GNU/Linux distribution(發行套件,簡稱 distro)的問題除了 GNU/Linux 和其他作業系統的比較外,這個 distro 的議題也是常引起口水論戰。原因倒不是哪個 distro 真的比較「好」的問題,而是每個人使用電腦的目的及習性有所不同,所站的角度不一樣,當然主張就不一樣了,其實,「好」的定義在哪裡呢?聰明的諸位不妨試著思考一下。個人誠懇的建議諸位,這類議題的論戰真的是很浪費時間,除了上述的理由外,還有各 distro 互相競爭是互有消長的,而且 FS/OSS 都是 open source,差異並不會太大,倒是各家 distro 有各家 distro 的一套使用哲學,他總是針對某些族群的特性,但這永遠無法照顧到全部的族群。所以,就選個有人在使用的 distro 開始接觸,好好去研究才是正經,通常很少聽說有人從頭到尾只接觸一種 distro 的。
Linux 其實只是 Linus Torvalds 所寫的核心(kernel),必需配上許多工具(絕大部份是 GNU5 的)才能成為一個完整的作業系統,因此就有許多的廠商或團體在做這種整合的工作,這就是各種 distro 的由來。但由於主要部份還是:kernel + GNU Tools + XFree86,因此基本操作還是大同小異,不必太擔心。
安裝方式及安裝時所使用的指令各 distro 很可能會不一樣。在 i18n架構下,目前所有的 distro 都已具備中文能力,只不過是有沒有微調好及有沒有安裝中文字型的問題。各獨立的 distro 討論區您可在下列地方找到:
telnet://bbs.sayya.org
http://www.linuxfab.com/indexForumTree.php
http://www.slackware.org.tw
http://www.gentoo.org.tw
http://moto.debian.org.tw
http://knoppix.tnc.edu.tw
包括 CLE, Slackware, Mandrake, GNU/Debian, SuSE……等等,如果您想先瞭解各 distro 可以去逛逛再來決定,甚至有許多 distro 都已有熱心同好把安裝及使用手冊整理成中文供免費下載。請注意一下,不要把 distro 的發行版本編號當成是 Linux kernel 的版本編號,例如 Mandrake 9.2 這個 9.2 是 distro 的版本編號,而他的 Linux(kernel) 則是 2.4.22 的版本,千萬別搞錯了。所以,沒有 Linux 9.2 這種版本的(至少最近的將來是還不會發展這麼快速)。
另外一個要注意的地方,目前大部份的 distro,例如 Debian, Mandrake, Red Hat,他們的安裝套件,主程式和發展函式庫(含有 devel 字樣的套件)是分開包裝的,通常,這些發展函式庫的部份都不會安裝上去,所以無法編譯相關程式,如果您也想自行編譯程式的話,別忘了把這些含 devel 字樣的套件也安裝上去,這樣才找得到靜態連結函式庫(*.a,延伸檔名是 a 的檔案)及所需要的標頭檔(*.h,延伸檔名是 h 的檔案)。
這裡鄭重的提醒各位,有空時把您的安裝光碟 mount 上來,看看裡面有些什麼東東,最近由於安裝程式的自動化,讓許多使用者跟本搞不清楚有什麼套件可以用,以致 BBS/News 上經常出現缺什麼程式,要安裝什麼套件的問題,千萬拜託熟悉一下自己的倉庫裡頭有些什麼存貨。
-----------------------------
不錯的英文網站簡介http://www.cafecomputer.com/faqindex.htm
這是 John Pisini 先生維護的 Linux-FAQ (Yet another Linux FAQ),是由他自行撰寫的另一份 FAQ 文件,常常更新,資料相當新,很值得參考。
http://www.tldp.org/
這是 LDP(Linux Documentation Project) 的大本營,就是一些 HOWTOs 文件。在這裡的都是最新的版本。
http://homepage.powerup.com.au/~squadron/
這是一頁就說完的 Linux 手冊。裡面含重要的系統設定檔及一些相當實用的指令,可以下載後印出來放在手邊隨時參考。雖說是一頁,但我下載的 pdf 檔卻是兩頁,作者大概是指正反兩面都印吧!:-)
http://www.xfree.org/current/
這是 XFree86 的文件大本營。
http://pdx.freedesktop.org/
新一代的桌面環境 project。由於 X protocol 的老舊,XFree86 的開發腳步也稍微緩慢了些,這個方案異軍突起,值得大家注意。
------------------------------------
充分利用系統裡頭的文件man pages(使用 man 這個指令)
info pages(使用 info 這個指令)
/usr/doc (或 /usr/share/doc) 目錄下的資料(尤其是一些 HOWTO 文件)
/usr/X11R6/doc
/usr/src/linux/Documentation 下的資料
請記得安裝時要把一些文件安裝上去,別讓文件躺在 HD 或 CD 裡,卻跑