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
間,指定它為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