一、關於Linux的誤區 1、Linux干什麼用? 首先,很少有人用Linux做桌面系統,因為 Windows 桌面系統已經足夠好了。我們主要把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相關的選項或g
clearcase/" target="_blank" >cc相關選項,一般就可以了。
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(看系統狀況)
shu
tdown(關閉系統)
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/PRO_LAN_Adapters/eth0.info或/proc/pci文件中也可以找到 。在menuconfig中用空格鍵改變選項狀態,前面的<*>表示該功能編譯在內核中,主要是運行速度快。< >表示不需要該功能。表示把該功能編譯成模塊,通常為了減小尺寸,和更換方便而把某些驅動編譯成模塊。
(6)下面的事情比較程序化,照著做:make dep (檢查文件的完整性,過程很復雜)
(7)make bzImage 注意大小寫(真正開始編譯了耶!我覺著這個最過瘾了,屏幕“嘩啦嘩啦”的,這時候你會感覺到,多少不知名的程序員在這個復雜的系統中貢獻了自己的一份力量)
(8)make modules (編譯那些被標記為的功能模塊或驅動程序)
(9)make modules_install(把編譯好的模塊復制到指定地點,一般是:/lib/modules/ 。注意:不同版本號的模塊是完全分開在不同目錄中的,因為modules跟內核是緊密相關的,混用容易導致系統崩潰)
(10)cd /usr/src/linux-2.5.7/arch/i386/boot ,用命令:cp /usr/src/linux2.5.7/arch/i386/boot/bzImage /boot/vmlinuz-2.5.7 把文件bzImage文件改名成vmlinuz-2.5.7復制到/boot/
(11)cp /usr/src/linux-2.5.7/System.map /boot/System.map-2.5.7
(12)進入/boot目錄,rm System.map
(13)在/boot目錄中運行ln System.map-2.5.7 System.map 10-13兩個步驟每次重新編譯都要做。
(14)我開始提醒過的,但願你安裝了lilo (否則你就高唱:“神啊,救救我吧!”),編輯文件:/etc/lilo.conf ,做下面的編輯:
boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
lba32
default=linux-2.5.7
image=/boot/vmlinuz
label=linux
initrd=/boot/initrd
read-only
root=/dev/sda5
image=/boot/vmlinuz-2.5.7
label=linux-2.5.7
initrd=/boot/initrd
read-only
root=/dev/sda5
黑體字部分是後加的和修改的。萬一你沒有安裝lilo,你只能修改/boot下面的連接指向你新的System.map和vmlinuz , 而不用修改lilo了。這樣也能啟動,但是一旦出現問題,你的機器就啟動不了了。
(15)執行命令:lilo (用來更新lilo數據),注意輸出的結果:帶星號的是缺省的。
(16)祈禱,然後reboot 系統重新啟動後,用uname –a 可看到新的內核起作用了。如果出現任何問題不能引導了,你需要在lilo的引導界面選擇原來的內核啟動,進入系統後重新改變內核參數,調整硬件或其他配置。然後重復前面所有過程。