萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux簡明系統維護手冊(一)

Linux簡明系統維護手冊(一)

class="22681">
摘要
  本文是長期工作經驗的總結,說明了Linux下各種主要網絡應用的配置實例,對接觸Linux時間不長的同學們很有參考價值。注意:其中有些應用還是很復雜的呀。文中VPN技術部分要感謝老井無私的提供支持,這是我們共同的完成的。(2002-11-01 16:50:49)

前言

  有同事已經通過艱苦的工作完成了長達好幾百頁的關於Linux的文檔。事實上,在網上還有超過好幾萬頁的各種關於Linux的技術精華,還不包括英文的。有數萬程序員和網絡專家在為這個軟件努力工作。這就是自由的魅力。

  我使用Linux有不少時間了,期間也經歷過無數的挫折,同時也得到過很多高手的幫助。我一向喜歡言簡意赅的文字。通過下面的簡單句子和代碼,我希望能夠表達出我使用Linux的體會。也許本文的結構比較凌亂,但我希望它的每一句話都是對你有用的。當然,你要知道一些更詳細的東西,請參閱我同事寫的文檔。

  當然,能夠通過查閱這個文檔,使你的工作順利是我最大的心願。

一、關於Linux的誤區

  1、Linux干什麼用?

  首先,很少有人用Linux做桌面系統,因為Windows桌面系統已經足夠好了。我們主要把Linux用作網絡服務器的操作系統。如果你和你的應用符合下面的幾條,那麼你合適使用Linux:

  *不願意花錢在操作系統和網絡應用上。

  *用D版系統受良心譴責或害怕承擔責任。

  *想得到和花錢的系統差不多的性能。

  *在用戶面前顯得水平較高。

  *認識幾個弄Linux的高手,或者知道在哪裡能夠找到問題答案。

  2、每種Linux發行包差別很多嗎?

  如果你在上世紀80年代末到95年之前這段時間大量使用PC機的話,那對於Linux你應該很好理解:它就象一個有著32位搶先多任務核心的DOS,其區別在於外表看起來像是一種UNIX。Linux是好多人用智慧堆砌起來的,初學者經常問:“RedHat好還是Slackware好?”。這個人同時還面臨上百種選擇,這的確讓人頭痛。大部分Linux發行包實際上很簡單,幾乎所有的發行包都有相同的內核(也許是不同版本),外部命令和數據文件的差別也僅僅局限於在文件系統中的存放位置不同(這導致了某些兼容性問題,因為在某些地方找不到特定的文件嘛)。另外就是有些發行包為了顯示自己的卓而不群,在發行包中增加了一些自己的實用程序。實際上動手修改內核的廠商不算太多,因為這樣會內核官方版本的不斷更新而手忙腳亂。當然有一些嵌入式系統開發商在Linux基礎上做了自己的系統另說。

  擁有眾多的發行包是Linux的一個很討厭的問題,在這一點上,我更喜歡FreeBSD,因為它只有一個官方發行版本,也運行得比較穩定。可給Linux做軟件的程序員太多了,Linux上面的資料也更多。記住:當一個家伙跟你說用哪個發行版本無所謂的時候,那他就是專家。

  3、Linux業余愛好者的東西嗎?

  這樣的宣傳給了很多人這樣的印象。其實,Linux是一個嚴肅的操作系統,擁有一切操作系統共有的特性。它可以用在很多嚴肅的場合。

  4、Linux性能比Windows更好嗎?

  這裡的答案會讓你失望,據我以往的實際測試,2.2版本的Linux核心的性能比windows2000要低。值得欣慰的是2.4版本的核心性能有大幅度提高基本上接近了Windows2000。但Windows2000復雜的圖形界面占用了相當的系統資源。

  5、Linux比Windows更復雜更專業嗎?

  從復雜度上說,Windows2000要比Linux復雜很多。在核心技術上,Windows也更先進。

  6、Linux更可靠嗎?

  應該從兩個角度評價系統的可靠性。(1)系統自身的可靠性,兩者象差不多。人們普遍認為的Windwos不如Linux可靠的印象來源於Windows眾多的良莠不齊的軟件。當然,Linux比Windows結構簡單,在一定程度上也可以提高可靠性。(2)從安全性角度來說,Linux遠遠高於Windows系統,道理很簡單:樹大招風嘛。另外,Linux的源代碼開放機制使得漏洞發現和消滅得很快。而Windows相對就顯得比較官僚了。這裡補充一點,我用過的最可靠的系統是BSD類的OS,可靠性和安全性都可圈可點。

  7、Linux真的不用花一分錢嗎?

  大部分的發行包需要花少量的錢購買。當然你也可以從網絡上DOWN。其實這些發行包未必符合你的應用,一般都需要經過一些改動和定制才能運行好。當然,花的錢跟Windows沒法比。

二、Linux安裝注意事項

  現在的大部分發行包都很容易安裝,基本上都是圖形向導式的,每個發行包都不太相同,也無法一一描述,如果你連安裝都不明白,那就別用Linux了。這裡僅僅說明幾個注意的問題。

  1、如果要和Windows混裝,一定要先裝Windows,後裝Linux。

  2、分區的時候,根據計劃安裝的軟件靈活決定分區。一般分區有:/,/root,/usr,/var和swap分區,其中swap分區類型和其他不同需要專門選擇一下,它的空間一般是物理內存的兩倍即可。/root分區是緊急情況root用的,有64兆就行了。

  3、當然,為了方便,你可以安裝發行包給你做好的軟件。但我安裝Linux的習慣做法是開始就安裝一個最小系統,然後安裝所有的編譯工具。安裝編譯工具的方法一般都通過你用的發行包的包管理工具實現,這樣最方便。比如在TurboLinux中,運行/usr/sbin/Turbopkg就可以了。在管理工具中選擇所有關於Developoment相關的選項或gcc相關選項,一般就可以了。

  4、lilo一定要裝。否則一旦出現分區問題都不好辦。

  5、如果和Windows混裝的時候,裝完了系統起不來了。可以用98啟動盤啟動,然後用FDISK /MBR回復主引導分區來保住Windows分區。

  在安裝了最小系統和全套的編譯器後,我們應該得到一個比較干淨的系統。在這個系統上,可以下載和安裝各種應用軟件了。

三、基本使用

  1、文件系統

  無論有多少個分區,整個文件系統都是一棵完整的樹結構。經常用到的目錄有:

  (1)/usr:存放各種應用程序文件用。其中的/usr/local用來存放後安裝的軟件

  (2)/var:用來存放所有的數據文件

  (3)/proc:裡面的文件用來表示系統內核的各種配置和狀態。這一塊不是真正的文件系統,而是內存裡面的各種數據。可以從這裡得到一些常用的系統信息。比如CPU內存什麼的。

  (4)/etc:這裡是放置所有的系統配置文件。一般情況下,後安裝的軟件的配置文件不會放到這裡。除非你是用RPM安裝的隨發行包配的軟件或者故意這樣做。我不喜歡把不同軟件的文件混在一起,因此通常讓不同的軟件的配置文件放在各自的目錄中。

  2、常用的命令

  這裡我列出一些經常用的命令,具體的用法可以參見相關手冊頁(希望你的英文不象我這麼差)。

  vi(一定要會用這個你非常討厭的東西,如果你屈服了,可以選擇另一個叫做pico的編輯器,它有點象DOS的edit)

  head(用來看很長的文件用)

  tail(同上)

  netstat(看網絡狀態)

  tar(解開.tar.gz的壓縮包)

  ps(察看進程)

  kill(干掉進程)

  top(看系統狀況)

  shutdown(關閉系統)

  cat(看文件內容)

  ping (看網絡連通狀況)

  ftp(傳輸文件)

  man(手冊)

  上面這些命令都是最最常用的,一定要把基本用法記牢。事實上,每人能記住全部命令或一個命令的全部參數,記住幾個常用的就行了。其他的查書。

  3、內核升級

  如果你不願意冒險,可以跳過這個部分。不過根據我實際使用的經驗,2.4.x版本的內核性能比2.2.x的性能至少提高40%,還是很值得一試的。現在最新的發行包幾乎都帶有新的2.4內核,但是版本號想對保守。這裡,我的建議是在決定升級任何部分的時候,一定要首先看一下所謂的“currect version release note”信息,裡面告訴你本次版本升級都有些什麼改動。如果改動的內容不涉及你當前的環境或需求,只是增加了一些邪門設備的驅動,你大可不必急著升級。補充一句話:Linux的內核版本號的中間一位是奇數的是非穩定版本,比如2.3,是偶數的才是穩定版本。

  升級內核的步驟如下:

  (1)首先在網上找到你打算升級的內核文件,一般名字是:linux-2.x.xx.tar.gz,把這個文件復制到/usr/src。(不知道在哪裡找?看看:http://www.kernel.org ,最好找到.tar.gz格式的,比如這裡:http://www.kernel.org/pub/linux/kernel/v2.x/)。下面的升級舉例是從2.2.18升級到2.5.7(這是最新的內核了,你使用其它的版本別忘了改變版本號)

  (2)解壓縮:tar zxvf linux-2.5.7.tar.gz後生成一個目錄:linux-2.5.7。

  (3)進入/usr/src,用ls –l 命令可以看到src裡面有一個連接,類似於:linux -> linux-2.2.18/ (連接指向你當前用的內核版本)。首先刪除這個連接(rm linux),用ln -s linux-2.5.7 linux 命令重建連接。我想你一定不會連這裡的版本號都照抄吧?

  (4)進入linux-2.5.7 目錄,如果不是第一次編譯這個內核,最好用命令:make mrproper 刪掉上次編譯產生的.o文件等,當然以前保存的配置也丟了。

  (5)用命令:make menuconfig命令調整內核配置以適應你目前的環境,記住,不懂的配置不要亂動。首要任務是調整各種硬件的環境,比如SCSI卡:SCSI support/SCSI low-level drivers,不知道現在的SCSI卡型號?在/proc/scsi中可以找到。還有網卡,在Network Device Support 裡面。不知道現在的網卡型號?在這個文件裡面寫著呢:/proc/net/PR

copyright © 萬盛學電腦網 all rights reserved