歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux文化 >> linux入門文章-有趣易懂的linux入門文章

linux入門文章-有趣易懂的linux入門文章

日期:2017/2/27 12:13:03   编辑:Linux文化

你從來只用過Windows,從來沒接觸過UNIX,只知道把一個文件拽 來拽去,只知道硬盤就是C: D: E:卻從來沒有研究過分區表,也許 會用VC編個程序,很習慣它的集成環境.... 有一天,不管什麼原因了,也許是看報紙上那些把內存和硬盤都分不 清楚的記者的吹噓,或者是老板要求你用它作個項目,或者是同學 們都有了你沒有覺得很土,或者你聽說找工作有這個的經驗就有更大 希望....不管怎樣,你想在自己的機器上安裝一個Linux。OK,這個 文章就是給你寫的,因為從現在開始,你會有成堆的問題你會覺得從前 在windows那裡得來的有關計算機的經驗好像完全用不上。你會覺得 “Linux怎麼這樣麻煩”。你會有種從來沒有開過汽車但是得 把汽車拆開修理一樣覺得無處下手。OK,這個文章就是為你寫的。 為什麼要學Linux。其實你不必學習Linux,如果你就是想使用計算機 讓它使你的工作,比如打字,排版,統計數據等更有效率,Linux不 行。Windows,或者我推薦windows 2000是你最好的選擇,它對中文 的支持很好,非常穩定,上面有無數應用程序,而且如果你自己承擔 風險,還可以使用盜版,免費。Linux將會給你造成很多麻煩,安裝時 會造成系統數據丟失,無法驅動網卡/聲卡/顯示卡/顯示器,無法配置 中文,圖形界面速度慢,等等。從前在windows上很容易做到的比如 修改顯示頻率或者安裝新的網卡驅動在Linux下都變得好像要你自己重 新上一次大一計算機原理課那麼討厭。呵呵,那Linux有什麼好處呢? 你會問。其實Linux沒什麼好處,從使用角度,它唯一的好處是它是 我們自己的,而windows再好,是Microsoft的。“又能怎麼樣?” 你也許又問。區別是,Linux可以讓你來研究它,通過使用Linux你可以 獲得更深一步對計算機的了解 -- 而不只是一個全自動的盒子。計算機 是一個很神奇的東西,你也許對那些寫出windows的程序員很崇拜(我 是的),或者對那些能發明更好的算法更安全的操作系統的hacker(對不 起,遠程攻擊系統的不是hacker)很崇拜,那麼你應當知道,坐在一個 windows的機器前面整天就會用鼠標拖拽也許能給你一個很好的打字員 的薪水,但是永遠無法讓你進入真正計算機的世界 -- 成為一個自由 思想的Hacker,或者說,你只能永遠是個windows的用戶 -- 也沒什麼 不好,很多領導還不會計算機呢 -- 而不可能有機會自己寫一個windows。 一個不太妙的結果是,當世界上充滿了windows的奴隸時,我們就得花 更大的價錢從Microsoft那裡獲得這樣的技術,某些社會裡,我們管這個 叫做剝削。 講這麼多,無非是說,蘿卜不能兩頭切,至少現在是這樣。要想什麼 別人都給你做好,系統安裝一路回車,硬件配置點兩下鼠標,對不起, 請用windows 2000。如果你准備好了這一切,那麼接著看吧。 -- OK,你的第一個問題是:什麼是Linux,它和UNIX有什麼區別? 問這個問題的原因呢,多半是你還在大一的時候一次去實驗室,看到 高年紀學生在一個特大屏幕的機器上作題,你羨慕的看著他,問: “這是什麼計算機啊,這麼高級?”而他不無驕傲的說,“這是 UNIX”。後來你懂的多了,知道那是SUN工作站,上面運行著Solaris, 就是UNIX。現在你又聽說Linux也是UNIX,是怎麼回事呢? short answer:去看書,街上很多Linux的書第一章就是講他們的歷史 和親屬關系的。 long answer: UNIX是一個20還是30年前由幾個研究生在實驗室裡開始 後來一個大公司把它商業化了的一個操作系統。一來二去,它成長 並且占領了市場。當時它只是運行在只有大學才買得起一兩台的昂貴 機器上。後來機器多了,公司多了,懂得人也多了,就分家了,而 “UNIX”這個名字由於法律關系,誰也不能說自己的操作系統是“UNIX” 而只能說是“UNIX兼容”系統了。所以現在“UNIX”系統是不存在的, 存在的只是一個遙遠的傳說。那麼現在那些Solaris,AIX,IRIS都是什麼呢? 那些都是各公司在他們硬件平提上作的商業UNIX,這些系統都遵循一個 叫POSIX的古怪標准,對了,這個標准呢,是後來UNIX太多太亂,大家編程 接口甚至命令都不一樣了所以沒辦法座下來商量的一個協議。 那麼Linux是什麼呢?Linux是基於PC(其它平台也有的支持)的UNIX兼容 系統,在跟UNIX的關系上,它不比任何其它UNIX兼容系統遠。所以如果 你有“Solaris才是正統UNIX,Linux只是兼容”的想法,對不起你錯了, 起碼你得把支持AIX的人打敗才行,他們還認為AIX才是正統UNIX呢。 所以用Linux你可以學到有關UNIX的知識,這些知識絕大部分在其它商業 UNIX上可以用得上。當然,其核心思想絕對是相同的。那麼在三年前只有 你的讀博士的輔導員才有機會在實驗室那台寶貝SUN上學的知識,你現在在 PC機上就可以實踐了,這難道不是很妙的一件事情麼? 第二個問題:我想裝一個Linux,最新的是哪個版本,我聽說過xxxlinux,yyylinux, 還有國內某個公司鼎力推出的zzzlinux,到底哪個更好呢? 首先你需要明白,Linux不是windows,它不是一個由一家商業公司維護的軟件, 只有一個包裝。Linux是可以任意包裝自由配置的東西。任何一個人,一家公司 都可以按照自己的想法,比如加一點功能,加中文支持,作一個Linux出來。這些 Linux雖然核心部分都一樣,但是他們所帶的各種軟件,缺省的配置都不一樣。區別 是用一種Linux 發布 (不同的Linux我們叫做不同的發布)也許硬件很好配置, 各種軟件也好安裝,用另外一種也許速度快,再一種也許支持中文比較好。總之 沒有白吃的午餐,在windows下想當然的東西在linux下也許需要你熬夜才能得到。 所以從一開始選擇distribution就必須非常小心,否則因為自己剛好隨某個雜志 得到一個Linux發布就以為所有的都一樣就開始安裝,等硬盤數據毀了, 或者網絡哭天跄地也配不出來的時候,就晚了。不是開玩笑,我知道windows下 安裝驅動程序就是鼠標點幾下,可是在Linux下,為了驅動一個網卡,折騰一夜 是不希奇的 -- 當然,我覺得這是值得的。 所以,面對那麼多Linux distribution,你應當選擇哪個呢? 比較著名的Linux distribution有: RedHat:最新版本6.2, 7.0beta。由於RedHat公司已經上市,獲得了很多 商業的支持,所以它在硬件軟件兼容性上很好。實際上它已經是Linux的 工業標准。想象一下如果你是一個比如Oracle這樣廠商的老板,你需要為 Linux開發一個版本,而不同的Linux dist需要單獨開發維護,為成本考慮你 自然會只認准一個Linux。 Slackware(7.1)。很早就有的Linux,有很多老的忠實用戶,但現在越來越不行了。 SuSe Linux,德國人做的,在歐洲很流行,有一些驅動上的優勢。 另外還有Debian,CorelLinux等dist,不一一介紹了。 還有你會看到國內媒體上吹捧的各種“中文Linux”,他們的優勢主要是有 中文處理。但是如前一篇文章提到的,想用中文,用windows 2000最好。實際上 我覺得一個老7字班的前輩跟我說的一句話很好:“(對我們來說)在計算機上看到 中文本身就是一件很古怪的事情”。如果你是抱著學習計算機的目的而來,那麼 你不可能避免閱讀英文文檔。即使是microsoft的文檔,有關編程的文檔,最新的也 全是英文。當然,要上BBS,看中文網頁等,用英文的dist一樣能做到。 作為我個人(個人觀點,你不必相信我),我只用RedHat,因為我需要它作為一個 操作系統能讓我更快的掌握並且學習我想學習的知識,而不是跟愚蠢的網卡,聲卡 作斗爭。盡管這些斗爭對於學習Linux來說也是很有益的,但是對於一個新手來說, 如果連系統都安裝不上,無法配置,又怎麼談如何學習呢?Again,this is only my own opnion, and I could be wrong。 在這個系列裡,我會圍繞RedHat 6.2來講。 OK,從哪裡得到Linux呢?為了討論方便,省去不表要的枝節問題, 我只討論光盤安裝。所以第一步是得到一張RedHat 6.2的光盤。 得到光盤有兩種方式,一種是去買光盤,這個比較簡單,外面盜版盤 就有,不過需要指出的是,RedHat 6.2的光盤不可能是盜版盤,因為 RedHat 6.2遵循GPL協議,它是不收取版權費用的。所以任何人拷貝 安裝光盤都是合法的。所以不必為買到一張“RedHat 6.2的盜版盤”而 沾沾自喜或有了偷盜成功的喜悅....只是需要注意,賣盜版盤的為了 騙錢什麼都能做,有的把RH 6.0的盤刷個封面愣告訴你這是6.5最新的, 可別輕易信。記得當年(6年以前)kill殺毒軟件流行的時候版本升級快 就有了各種假版本,我個人就親自作了kill 500.2來騙人玩,誰讓他 愣說他那個kill 79.8是真的呢? 另一種方法是獲得ISO文件,這個是一半新手必問的問題。你多半是有 了網絡,懶得或者無法買到光盤。你從某個FTP下載了RH62_INSTALL.ISO 這樣一個600多M的文件。你琢磨著這就是個跟光盤有關的文件,但是你不 知道怎麼解開它。怎麼辦呢? ISO呢,就是光盤鏡像文件。假設你要把一個光盤的內容*完全*的傳給 別人,你怎麼做呢?當然最簡單就是光盤拷貝,如果要通過網絡,可以 把光盤上的文件都傳過去。如果這個光盤只是一些文件倒簡單了,可是如果 這個光盤有比如可以光盤啟動這樣的功能,傳文件恐怕就不行了吧。更不用 說在網絡上,傳總量為600M的上千個小文件的可怕了。 所以呢,有人就發明了ISO,就是可以把一個光盤忠實的“照張相片”,寫到一個 ISO文件裡。再用同樣的軟件可以把所有的信息再寫回光盤,得到一個一摸一樣 的盤,包括所有的比如能光盤啟動的能力。 那你已經有了這個ISO了,怎麼獲得光盤呢?簡單,找任何一個能刻光盤的機器, 它上面一定有類似EZCDPRO的刻盤軟件。每個這樣的軟件都應當有把光盤寫 成ISO文件和把ISO文件寫成光盤的功能。你需要在它的菜單裡仔細找,或者找 人幫你找,如何把CD IMAGE FILE刻成CD的功能,然後開始刻,就得到一張跟 RedHat 發行版一個字節都不差的光盤了.... 一點小問題:那些down ISO的地方往往有md5.checksum或者RedHat62.md5這樣的 文件,並不大,幾十個字節,你不知道它們是干什麼的,是不是也得都download 不然無法刻CD。實際上你不必管他們,那些是數據完整性校驗的文件,好像掛號信 的跟蹤單據一樣。只要信能到,是否有他們無關緊要。 另外還有ftp方式安裝,用winimage展開ISO本地文件安裝等方式,我不去討論他們。 好,現在你有一個RH 6.2的CD了,因為是ISO刻的,所以它應當能做光盤啟動。那麼, 把它放入光驅,然後調BIOS設定光盤啟動,啟動機器。我們可以開始安裝RH Linux了。 下來你的首要問題是“我的機器有16G,分了一個C盤4G,兩個D,E盤各6G”我還想保留 C盤的windows,我能把Linux安裝到D盤或者E盤上麼?呵呵,非常好,你知道Linux是 一個操作系統,可能要把windows弄掉,但是遺憾的是你對硬盤,分區的理解是錯誤的。 下篇文章會講硬盤分區的問題。 OK,要講硬盤分區了。在講這個問題之前,我先來講講概念問題,什麼是概念 問題呢?你還記得第一次,絕對的第一次聽到A:盤,B:盤,C盤時候的感覺麼? 在那之前自己也許知道計算機有個存儲數據的地方,因為在電視上或者廣告上 看到過磁帶機(我一直不知道為什麼到了很久很久那種一個傻姑娘在一個磁帶 櫃前面操作一個現在看來是垃圾的磁帶設備會不停的成為電視台播放電腦題材 節目的缺省背景)或者硬盤的圖象。但是你並沒有一個概念計算機究竟怎麼使 用這些設備,直到你第一次打出dir a:或者打開explorer看到A: C:字樣的目錄 樹。如果你還記得當時的感覺,恭喜你,這種感覺又回來了。 對於一般人,只需要知道計算機能做什麼就行了,所以對於他們來說,什麼東 西越簡單越好,越不需要他們去花時間學習理解越好,所以計算機從開始的打 孔到了後來的鍵盤屏幕,現在又往語音輸入智能交互方向發展。這很好,讓那 些把計算機當工具的人能更專注他們的工作(當然,他們會為此向我們--計算 機的建設者付出應有的報酬)。可以說,MS在這方面作的很好,沒有人會否認 windows是一個非常“好用”的操作系統。這是指從使用者而言,你不需要太多 的去理解機箱裡面的知識,或者說盡可能不去理解,就能盡快讓計算機為你工 作。比如將本來很復雜的硬盤通過它在中間的操作搞成了C: D: E:盤這樣的東 西,讓一個只需要會打字的秘書MM也能知道怎麼存儲文件(當然也會有笨的不 可救藥的)。但是這樣(MS替你打點一切)的做法的一個問題也是顯而易見 的:你沒有機會,或者說沒有被迫的機會去了解更深一層的知識。而且當你腦 子裡只知道”C: D: E:“的時候,你就只有跟著windows走這一條路了。 OK,言歸正傳。安裝Linux的硬盤分區問題。這個問題說起來是每個Linux新 手,甚至到有一定水平的人都不敢說很清楚或者掌握的(包括我自己)。硬盤 是個很古怪的東西,它的基本脾氣是,一點搞不好,一大塊數據就要丟,而且 丟的干干淨淨。我已經不止一次看到某人的畢業論文之類東西在答辯之前三天 因為硬盤問題而丟失並且沒有備份!而安裝Linux是必須跟硬盤很底層的部分打 交道的,而不是win下面安裝個程序那麼安全。所以我的第一個建議是,如果硬 盤上有重要數據,最好別貿然安裝Linux。比較好的一個辦法是找台不重要的機 器,硬盤可以重新分區格式化的,多安裝幾次Linux,多試驗一下windows和 linux共同存在的各種情況。這樣以後心裡就有底了。如果實在要安裝,一定要 備份重要數據,切記。 下來講Linux對於硬盤的概念。只考慮IDE硬盤。對於一個硬盤的操作分很多 層。我們需要知道的,是硬盤是由很多個512字節的扇區組成的。而這些扇區會 被組織成一個一個“分區”。這些對於每個操作系統都是一樣的,在這之上每 個操作系統自己去管理分給自己的分區。對於windows來說,它會把這些分區格 式化然後按照CDE盤來管理。而Linux則不同。所以呢,一個硬盤上分多個分 區,安裝多個操作系統比如windows,Linux,Solaris等是完全可以的。但是由於 每個操作系統對分區的操作不同,只能說把操作系統安裝到分區中而不存在把 操作系統安裝到CDE盤中(UMSDOS方式先不提)。 每個硬盤的第0個扇區是個特殊扇區,它不屬於任何分區。它存放的是兩個東 西:第一是一個很小的程序,它由計算機在啟動的時候運行,這個程序一般是 某個操作系統帶的啟動程序,它運行後會啟動某個操作系統或者給用戶選擇來 啟動某個操作系統。Windows的0扇區啟動程序很簡單,它就是把windows啟動 了,所以在這之前你是不會有多操作系統在一個硬盤上共存的概念的。而Linux 所帶的啟動程序可以讓你選擇啟動哪個操作系統,它叫做lilo。這個東西我們 以後會經常碰到它。0扇區還存放有另外一個重要數據:分區信息。前面講過, 硬盤是有分區的,那麼到底怎麼分的,這個信息是存在0扇區的。硬盤的分區規 則是這樣的:一個分區的所有扇區必須連續,硬盤可以有最多四個分區,這四 個分區可以是四個主分區或者三個主分區加一個擴展分區。在擴展分區裡可以 再繼續分邏輯分區。舉一個例子,一個10G的硬盤,安裝windows,有C: D: E: 三個盤。那麼它的分區情況可以是這樣的: 分區一:主分區 4G ,格式化為C:盤 分區二:擴展分區    4G  擴展分區不能格式化,它只能被再分區為邏輯分區 剩余空間(可以被分區三,四占用) 2G 在擴展分區中,建立兩個邏輯分區各為2G,格式化為D:E:盤。 那麼在Linux看來又是怎麼樣呢?注意我提到過,對於任何操作系統而言,分區 都是一樣的,盡管Linux不認同C D E盤,但是這些分區都是相同的。所以Linux 下看也是分區一,分區二等東西。但是它對這些分區的標志和解釋是不同的。 在Linux下,硬盤是一個設備,實際上Linux下什麼都是設備。對於IDE硬盤而 言,Linux認為存在四個設備,對應於IDE的四個位置接的設備。如果裝過機器 我們知道主板上有兩個槽,IDE0和IDE1,每個槽上能掛兩個設備,主盤和從 盤,這些盤可以是硬盤可以是光驅。那麼Linux是怎麼認為這些設備的呢?在 Linux下,這些設備用/dev/hdx來標示。IDE0上的主盤就是/dev/hda,從盤就是 hdb,依此類推,如果可以有多個IDE槽就可以延續到hde hdf等。總之每條硬盤 線上接的設備都被Linux認為是一個/dev/hdx設備。如果你的機器是IDE0槽上的 主盤是硬盤,那它就是hda,如果IDE1的槽上主盤是一個光驅,那它就是hdc。 在windows下fdisk是對”硬盤1“,”硬盤2“進行操作,而linux下的fdisk就 是對/dev/hda,/dev/hdb等進行操作。這樣做很靈活,很直觀,不是麼? 那麼Linux下怎麼看分區呢?Linux下的分區概念是,硬盤上的每個分區也是一 個設備(又來了)。他們的標志是/dev/hdxy,其中hdx根前面一樣表示哪個硬 盤,y表示第幾個分區。以hda為例。hda1就是第一個分區,hda4就是第四個分 區位置。邏輯分區從hda5開始。所以剛才那個例子中,Linux看來就是hda有 10G。hda1是主分區,格式是windows。hda2是擴展分區,在它上劃出了hda5和 hda6,格式是windows。hda還有2G剩余空間可以繼續建立hda3和hda4。注意因 為hda2空間已經被劃分完,所以無法再建立邏輯分區。 這些硬盤的東西很容易搞混,建議多實踐,多總結一下。可以參照一些有關書 籍,早期的DOS書在安裝部分講了一些。現在的linux安裝部分也都有不少。另 外還有網上的一些介紹資料。 明白了Linux對分區的處理。下來就是分區策略了。在用RH6.2的光盤啟動,一 直回車選擇缺省設置會到一個分區界面。這裡你需要告訴linux安裝程序在硬盤 的什麼地方安裝linux。你需要告訴它一些信息,其中包括,建立一個新的 Linux分區,多大,mount到哪裡。這裡需要介紹一下mount的概念。 我們知道硬盤是可以分成很多分區的,每個分區由各個操作系統格式化然後就 可以使用了。但是要使用必須有一種方法。windows,或者DOS的做法是將格式 化好的分區掛(或者說mount)成C: D: E:盤。盤符的分配是操作系統決定的 (到NT後可以用戶指定)。在Linux下某個分區怎麼使用必須用戶自己指定。在 Linux下分區並不按照C: D: E分配,而是掛(mount)到一個目錄下。整個UNIX 的存儲空間結構是一個目錄樹(而不是每個C: D: E:下各有自己的目錄樹)。 最上一層是根目錄(用/表示,注意不是windows的反斜槓)在根低下有其它目 錄。首先需要有一個分區mount成/,然後再在根下面建立其它目錄然後把分區 mount到這些目錄上去。所以整體來看一個unix的存儲系統是一個目錄樹,但是 它可以包括很多分區,甚至其它存儲設備,比如光驅,內存盤,或者網絡磁盤 等。 在Linux安裝的時候除了/還有幾個目錄是預先建立的,我們需要知道的 是/usr,/home還有/root。先不管他們都做什麼,一般而言我們需要分一個空 間,指定它為Linux Native類型,然後mount point是這幾個目錄之一。另外還 需要注意的是Linux分區有兩種類型,native是可以存儲文件建立目錄的那種, 還有一個linux swap,這個是linux的內存交換分區,在安裝RH的時候必須指定 一個。所以在安裝的時候最少需要分一個區,類型linux native,mount到/ 上,然後一個分區類型linux swap,swap區不mount為任何目錄,系統對其進行 單獨處理。 下來是分區大小問題,安裝Linux一般而言1G空間為/就差不多了,初次安裝為 方便起見,可以建一個2G的分區mount point為/,然後一個swap。swap的大小 作的跟內存一樣大就是了,最大128M。以後再安裝的時候可以根據自己對硬盤 的要求建立其它分區來mount比如/home。 對於已經安裝了Windows的機器,可以在Linux安裝程序裡刪除一個windows的分 區,一般而言是一個邏輯分區(你不會想刪除C:盤吧),然後在它的空間裡建 立Linux的分區。 Linux的/可以是主分區可以是邏輯分區。但是需要注意的是8G的問題。我想你 也許聽說過8G,到底8G是什麼呢?具體問題比較復雜,簡單說就是不能把Linux 的/分區mount到一個硬盤8G以後的分區上。所以如果你的硬盤有16G,前6G已經 分給C:盤,後裡面是兩個5G的D: E:盤,納悶你就得把D盤分區刪除建立Linux分 區而不是E盤,因為E盤已經在8G以後了。8G以後安裝Linux是沒有問題的,只是 無法啟動。當然這個是有解決辦法的,但是在新手的狀態我還是建議盡量按照 最簡單情況作,將來熟了再練習其它。 分了區之後繼續安裝,你還被要求配置一些其它東西。包括root密碼,Lilo, 配置網絡,X等東西。其中Lilo是比較重要的一部分。你會被要求將lilo安裝到 MBR,分區啟動扇區,或者一張軟盤上。你需要選擇是是否安裝到MBR或者 floppy上。一般而言安裝到MBR上即可,為了保險起見可以做到軟盤上,這樣機 器用硬盤啟動還是windows那套,進入linux可以用軟盤啟動。注意你需要把 BIOS中的Virus Warning關閉,否則無法安裝到MBR上。 如果你的機器配置比較標准,網卡,聲卡,顯示卡等都能自動檢測出來的話, 一路回車,再啟動你就可以進入Linux了。如果運氣不好(大多數情況是)網卡 聲卡沒有在啟動的時候配好也無所謂,跟windows一樣將來可以再配置。總之這 些不會影響到你安裝。 OK,機器再啟動,跟以往不一樣的是沒有看到Starting MS Windows 98....而 是一個Lilo:的提示符。這說明Lilo已經正常安裝了。你現在按回車就可以進入 Linux了。如果要進入Windows可以打DOS然後回車。如果你指定了不同的 windows分區啟動標志符,可以用[TAB]鍵看一下你有哪些選擇。 這是一個很經常被問到的問題,這裡說一下。出於某種原因你要刪除Linux,你 知道用DOS盤啟動然後fdisk刪除Linux分區或者重新安裝NT刪除Linux分區。但 是當你一切都安裝完了之後windows無法啟動,Lilo:這個符號總在那裡,機器 死了一樣。別重新分區格式化都沒用。然後某個半瓶子醋可能告訴你“沒救 了,低格吧”。記住,除非硬件損壞,硬盤任何時候不需要低格。這種情況是 由於其它安裝程序並不重寫0扇區,即MBR造成的lilo無法刪除。解決辦法很簡 單,請牢牢記住:用一張DOS盤啟動,運行DOS的fdisk /MBR。這個命令就是重 寫0扇區的引導程序為MS的標准程序,即可以啟動DOS,Windows,WindowsNT, Windows 2000的那個,而不會改變硬盤分區任何其它信息。所以它是絕對安全 的,絕對安全的,絕對安全的。當你碰到Lilo無法刪除的時候,記得fdisk /MBR。 OK,你成功的啟動了Linux,進入了一個圖形或者字符界面要求登陸。下來你會 有成堆的問題要問。下來我會講怎麼去問問題以及怎麼尋找幫助。 -- 給Linux新手 [系列之四] by YUHJ@SMTH BBS ”大夫,我痛,告訴我怎麼辦吧” “別著急,你先說你哪裡怎麼痛了“ ”噢,哪裡痛還不一樣治啊,我肚子痛,快告訴我怎麼辦吧,我很著急的“ ”別著急,再說說你昨天都干了些什麼啊?“ ”怎麼跟昨天干什麼還有關系?我昨天就干了我每天作的事情嘛,我覺得很正常,你怎麼共桓嫠呶以趺窗欤坎幌胨稻捅鹚怠啊 ”別著急,你再想想,昨天作了什麼跟平時不同的事情?“ ”不同?好多都不同啊,我昨天上班沒搭上公車打的的,上午沒人給我打電話,比較古怪...“ ”不是這些,我是問你有關吃飯啊,運動啊之類的“ ”噢,這個啊,昨天晚上我吃了餃子,很好吃的喔“ ”噢,吃了多少個餃子啊“ ”嗯,80多個吧,噢,對了,晚上肚子就疼,一直到現在“ ”噢,那你是吃撐了“ 以上是我記憶中BOB老師寫過的文章。如果你覺得這是個笑話的話,那我幾乎 每天都會經歷這類笑話。一個人會先問“我的Linux怎麼xxx了,怎麼辦”,到 最後一步一步的誘導問題直至答案揭曉。你下來會遇到很多問題,你不知道去 哪裡找答案。你覺得網上都是高手,你覺得高手就是你一站到那裡他就知道你 有什麼問題。他無所不知,會告訴你一個”絕招“一下解決你的問題。所以你 什麼都不必多說,一句話的標題加一個”無內容“的內容。就等高手給你”絕 招“了。 可惜這樣的事情從來沒有發生過。 如前所述,Linux相對於你也許很熟練掌握的windows系統來說有很多全新的概 念。好像微積分對一個只知道簡單代數的人來說一樣。在這種情況下,你用你 固有體系下的思維來試圖獲得答案顯然是困難的。舉一個例子,Linux下的圖 形界面X配置一向是新手必問的問題。你安裝了Linux但是屏幕卻是300X200, 16色的,你想知道怎麼辦。從windows那裡得來的經驗,你想應該有個辦法找 到”顯示屬性“這樣的菜單然後改變一下分辨率顏色深度,甚至掃描頻率就可 以了。所以你的提問多半是“我的X只有300X200,我在哪裡可以改變它”,然 後你期望一個高手告訴你“在xxx地方鼠標右鍵點一下,就得到顯示屬性的菜 單啦”,然後你就可以象在windows裡面一樣修改屏幕分辨率了。這裡有什麼 不對呢?不對的地方是,Linux下的X不是windows,它的顯示分辨率根本不是 在圖形界面裡面調整,而是在進入X之前,更重要的是,能改變到更高分辨率 的前提條件是顯示卡的驅動要配置好。而這個又跟Linux的發布,版本等有關 系。這麼多情況都不知道,高手絕對是沒有”絕招“告訴你的。對照前面那個 笑話,肚子統的原因很多,如果病人都能知道並且判斷出來,醫生還有什麼用 ? 那麼當你有問題的時候,應當怎麼做呢?第一,最好別問問題。Linux的安裝 配置本身就是個學習的過程,通過自己摸索解決一個問題也許比別人告訴你要 慢很多,但是解決問題的本身有助於你加深對Linux概念的理解。同時為了解 決一個問題也許能帶出很多其它問題。我記得我當初初學Linux的時候在一台 破機器上把Linux和win98安裝了很多遍,最終明白了Linux分區DOS分區共存, Lilo的配置的很多問題。當然一些關鍵地方自己摸索耗費時間太多而且沒有意 義,多交流也能達到大家共同提高的效果。關於如何去主動摸索尋找問題的答 案我後面會講,這裡就假定你需要到BBS上問一個你無法解決的問題。 你碰到了一個問題,Lilo不啟動,顯示010101或者LI死機,或者不知道為什麼 你的X屏幕只有300X200,或者不知道怎麼配置網卡,或者不知道為什麼書上講 的cd /usr/src/linux;make config返回錯誤信息,或者編譯了一個測試程序 gcc -o test test.c 然後運行test什麼輸出都沒有。你手足無措。你想上網 問”大蝦“們來獲得答案。 問問題的第一點,是要明白,兩個字就能說明問題並且解決一個的事發生在在 一個大俠身上也許表現的很潇灑,但是在你提問題的時候只能表現的很無知, 就好像那個說”我痛“的病人一樣。你必須詳細的描述一下幾個問題:你有什 麼,你做了什麼,你希望達到什麼效果,你發現什麼問題,具體的問題現象描 述。比如如果你網絡不通,你就需要先說你的Linux什麼發布,什麼版本,你 怎麼安裝的,怎麼配置的網絡,詳細到具體的命令,你的網絡情況,局域網廣 域網等。你也許會說很多廢話,但是要明白你是來問問題的,你不會知道究竟 問題出在哪裡,所以你必須把你能想到的跟問題有關的事情都說出來才可能包 含具體出問題的地方。在這裡你不是大俠,無關潇灑不潇灑的問題。我們的目 的是解決你的問題,並且通過解決問題獲得自身的提高,無它。 第二點,是不要自己做任何判斷。好像那個認為Linux也應當根windows一樣有 個地方點右鍵獲得“顯示屬性”的問題一樣。你事先根據自己在其它系統上的 經驗來自己做了問題的限定並且將回答問題的可能限制在一個很小的范圍內。 這樣做既限制了你自己的思維,也影響到你正確描述問題。事實是你的錯誤多 半是概念錯誤,開始走的方向就錯了,與其這樣不如把自己明白的似是而非的 東西拋開,仔仔細細的把那幾個問題(你有什麼,你做了什麼....)寫清楚, 看別人會怎麼作判斷。 第三點,你是來提問題的,你覺得你應該受到幫助。且慢,這裡已經不是教師 答疑了,你不再是一個有權力受到教育的大學生了。回答問題的人也不再是你 的老師或者助教了。他們對你沒有責任。大家無非是在一個地方相互交流共同 提高。如果有人回答你,絕對是在助人為樂幫助你。而當你的問題沒有人回答 的時候,多半是你的描述不夠詳細,別人不是醫生,不必一個一個問題誘導下 去。所以當你的問題沒有回答的時候,先對照前面一點再修改問題的描述,這 也是個思考的過程。實在不行,就自力更生吧,接著看下面的文章。 Linux的一個重要作用,我覺得,就是培養人自己探索的能力。回想我們的學 習過程,從小學中學到大學。讓人自己去探索的環境實在太少。所有的問題都 有一個標准答案,要麼在老師那裡,要麼在參考書上。就連作文這樣無法量化 的東西也有個倒霉的“中心思想”。所謂“自學”也無非是猜測到底標准答案 是什麼。如果要做大一點的課程項目(Class Project)也會定義的非常詳細 ,老師恨不得把所有你能自我創造的細節都堵上,這樣可以方便他評卷。這樣 環境下教育出來的人,到了Linux下就會經常感到無所適從 -- 的確,沒有老 師的標准答案了,你做的對不對只有自己知道。 所以學習Linux,很重要的一點是有自己搜索知識,突破自己思想局限的能力 。遇到問題第一步不是想“誰有標准答案”然後去問人,而是先想”我怎麼能 解決他“,不行就自己去尋找解決辦法,再考慮這個解決辦法為什麼自己想不 出來,將來碰到類似問題應該往哪個方向去努力。最後再考慮自己是否能在這 個方向上作出改進。經歷過很多次這樣的事之後,人的創造力會有很大的提高 ,而這個對於現在靠技術吃飯的人來說,就是10萬和2千的區別。 OK,你有一個問題,你不知道怎麼解決,你怎麼去尋找答案,怎麼提高自己呢 ?在有一個問題的時候,你首先要想,你是個新手,在你之前已經有無數個新 手了,你不會是個多特殊的新手。唯一的不同是你的知識面跟別人不同,而不 是你的問題有多特殊。比如你有個D-LINK 220網卡無法配置你覺得很困惑。實 際情況是有很多人已經困惑過了,他們問過這個問題並且都得到了答案。所以 你的第一步應當是明白”這個問題已經有根我一樣的人問過並且在某個地方有 答案了“。 那麼,怎麼找答案呢?在BBS上,你可以進入Linux版,然後想”已經有答案了 ,在哪裡呢“。首先你可以在從前的文章裡找,這個可以用搜索標題的方法。 先想一下如果你要問這個問題要用什麼關鍵字作標題,然後搜索這個關鍵字。 在BBS上搜索是輸入?號然後輸入關鍵字再回車。搜索中用什麼關鍵字很講究, 比如你要找有關DLINK 530-TX卡的信息,那麼你要想別人會怎麼問。肯定標題 裡有網卡型號,可是別人會怎麼寫呢?也許是530TX,也許是530 TX,也許是 530-TX。所以但是肯定都包括530,所以你可以搜索530這個關鍵字,然後把搜 索到的文章都看一遍,基本上就有答案了。類似的可以搜索的問題還有DE 尤 220,810(Intel 810主板內置顯卡驅動)等。 其實BBS只是一個很小的地方,真正最新最全的知識在網絡上。幾乎所有的 Linux有關程序,常見問題都會有人整理出來放在網上。需要注意的是,一, Linux不是microsoft,有專門公司維護文檔。Linux的文檔到處都有,質量不一,而且隨著Linux的不停升級會有各種版本。比如IPMASQ因為它隨Linux內核 升級版本更新很快,所以它的幫助(faq)也頻繁升級。看了老的faq會讓你更 糊塗。所以找文檔不要看到一個就盲從,要確認它的確有用,也許你找到的是 個舊版本呢?要知道一些講Linux的文章是5,6年前寫的,當時CDROM還是個稀 罕貨,你想從那裡獲得如何用CDROM安裝Linux的問題,卻發現上面都是講怎麼 用軟盤安裝,這個就不好了。另外還有有些講內核編譯的文檔都是說make config,而且裡面的選項也很舊,實際上現在內核編譯都用菜單方式的make menuconfig了。所以文檔的新舊是個很需要注意的事。第二點是你無法逃避使 用英文,你必須強迫自己去理解英文文檔。的確有中文的文檔,但是那些的普 遍問題是缺乏維護,太舊了。 下來請你把這個網址寫在手背上:www.google.com。以後對Linux有了問題, 就去上面搜索。google是我知道最好的搜索引擎,尤其是在Linux知識方面。 幾乎是我想知道什麼就能搜出什麼,從網卡驅動到並行計算機的配置。我希望 你以後在問問題之前在這上面搜過。搜索的主要技巧是選擇正確關鍵字,參考 前面講過的,搜索530-TX的驅動最好輸入Linux 530 driver字樣。有關搜索技 巧如果我有時間可以單獨寫一些東西。 另外一個地方是News Group,不過一般的news server是聯不上的,而且組也 不多。我們可以上www.deja.com去搜索。這裡都是非常新的國際新聞組的討論 ,當你的問題已經新到最新的文檔裡也沒有的時候,可以上這裡搜索。新手的 問題一般不需要。 當然不要忘了BBS的精華區,那裡往往有些意想不到的收獲,仍然需要注意的 問題是,一些中文的文檔,尤其是長文章,往往很舊。





摘自:CSDN


Copyright © Linux教程網 All Rights Reserved