一,linux新人.
對于這類linux sir 他們往往是對linux比較好奇,剛剛聽說這個系統,對這個系統沒有任何感性的了解.在這種情況下,他們安裝linux的目的通常是滿足一下好奇心或者是求異的心理,(和當初的我一樣).對于linux能給他們帶來什么,到底有什么用,他們沒有明確的目標,也許今天剛剛裝上去,明天就覺得linux是一灘難用的垃圾,于是就跑到他們心愛的Windows系統下去了.
他們即要嘗嘗鮮又不肯馬上輕易舍棄心愛的Windows.所以,對于這樣剛剛接觸linux系統的新人,沒有必要花很多心思去考慮如何把硬盤分區分得合理和高效.對于這些用戶,只需要滿足一下兩點:
1,windows 無論如何要保留著,而且在分區的時候不能破壞原來的系統.
2,確保linux 能裝上并且可以運行.
所以不能破壞原來的分區來重新給整塊硬盤分區,所以常用的方案是采用現有的Windows分區來裝linux系統. 通常使用windows中的最后一個盤,即最后一個分區來安裝linux系統.
假設原來Windows系統中有6個分區: C,D,E,F,G,H通常的建議是把最后一個分區作為安裝linux的根分區.linux完全安裝需要5G左右的空間(指目前比較流行的Redhat8 Redhat9等).千萬不要驚訝linux為何會耗費掉這么多空間,其實linux系統本身并不大,而且可以十分靈活的定制,小到幾M,大到幾G的空間上都可以裝上不同用途,不同性能的linux系統.之所以完全安裝要費5G的空間,是應為這5G中除了基本的系統外還包括了各種的數據庫,OFFICE套件,各種應用程序,各種服務器程序,各種的桌面管理器等,花幾十塊錢買一套linux系統,你就不必要再花錢買任何常規軟件了. 是不是要把這5G的東西全部裝上呢?
對于初學者,如果硬盤空間不緊張的話我建議全部都裝上,以免今后在安裝其他軟件的時候遇到各種煩人的動態庫倚賴問題和找不到在教材上看到的命令的問題,而初學者又不知道如何裝上那些他們在系統安裝的時候沒有裝上的軟件,這樣就會浪費很多時間走很多彎路.就我而言,我第一次裝linux的時候是裝的Redhat7.1,由于空間不多,(更多原因是抱著Microsoft Windows不放),所以只分了1G的空間給linux,結果又什么都不懂,在安裝的時候才發現默認安裝空間不夠,結果在不知道KDE是什么,GNOME是什么,X是什么的情況下把KDE和GNOME都勾掉了,只甚下一個X,當我興致勃勃的按書上寫的輸入startx 命令后,屏幕上只出現了一個黑色的X一個灰色的背景,和一個閃著提示符的xterm,不知道該如何才好,胡亂在xterm中敲了一個DOS明令dir,結果被我瞎帽遇到死耗子,還真輸出了些信息.最后不得不重新分了一個比較大的區再把KDE和GNOME裝上.
因此,這里我建議初學者第一次裝的時候把所有東西都裝上,以免遇到各種問題,linux不像Windows,它十分的靈活,但是正因為這一點,它也十分麻煩,如果對它沒有一定的了解是很難駕馭它的,所以為了避免麻煩,建議你把所有的東西都裝上,在安裝的時候選擇全部.假如硬盤空間比較緊張,至少也要把安裝程序默認的那些東西裝上,估計會花費不到2G的空間.也可以不選擇"定制",直接選工作站安裝方式.等到將來對系統有了一定的了解,知道了自己的需求,明白了哪些東西是自己想要的,哪些對自己來說是多余的的時候就可以根據自己的需求重新劃分分區,選擇軟件安裝了. 具體的分區方案如下:
在Windows下把最后一個盤用分區工具刪除,如果最后一個盤空間太小的話就把最后兩個都刪除.刪除后硬盤上就有了多于的空間,就可以開始安裝系統了,一般來說安裝linux需要兩個分區,一個是裝系統文件的跟分區(/),一個是作為虛擬內存的交換分區(swap),這是和Windows不同的,需要注意.所以,我們可以現在Windows下借助Windows下的分區工具,在剛剛騰出來的空間上建立兩個分區,前面一個根分區,后面一個交換分區,交換分區不用很大,按照官方的說法,虛擬內存應該是實際內存的兩倍大小,或者是在32M和實際內存兩倍這兩個值中選較大值,這是針對內存十分少的老機器的.但是在實際應用中分實際內存的兩倍大小顯然有點浪費,就如我有256M內存,160M 的交換分區,實際使用中swap只用掉3~5M,即使在使用VMware等及費內存的軟件時,swap的耗費量也只有60M,所以分100~200M的swap已經足夠了,不閉按照官方文檔說的分2倍的實際內存大小,如果你有512M內存難道你真的要分1G的交換分區嗎?
注意,如果交換分區的大小小于內存兩倍,安裝程序會有警告,只要忽略警告繼續安裝就可以了,個別版本的linux在交換分區小于實際內存兩倍的情況下,安裝程序將不能通過,比如TURBO linux 6.0 這種情況下可以暫時分一個大點的分區,等裝好后再把分區刪除,劃個小分區掛上.如果發現裝好后交換分區不夠用了也別急,你可以手工再建立交換文件,這將在后面說明.
分區分好后別急著格式化,linux有自己的文件系統,大部分版本的linux都不能裝在Windows的FAT或者NTFS分區上.所以你要做的只是重新啟動系統,啟動電腦,放入安裝光盤,安裝程序會幫你格式化你分出的兩個分區.其中的安裝細節不在本文討論范圍之內,隨便買一本入門教材上面都說的很清楚.
二,linux中鳥
對于這些linux Sir ,他們已經學會了linux的基本**作,學會了如何安裝軟件,常用linux命令等,也知道了linux系統的基本結構和linux跟文件系統下各個目錄的意義并且知道了光盤上那么多東西哪些是自己需要的,哪些是自己可能一輩子都不會用到的.于是就想著開始自己定制系統劃分出比較合理的分區大小和數目.下面我想以我目前的硬盤劃分情況為列,給這些linux進階用戶給一個我自認為比較合理的分區方案.
下面是我的硬盤分區情況(我有兩個硬盤,但是系統主要裝在第一個,第二個只用來拷貝數據,裝裝實驗性系統等)
Disk /dev/hda: 255 heads, 63 sectors, 2491 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 392 3148708+ 83 Linux
/dev/hda2 393 589 1582402+ 83 Linux
/dev/hda3 590 981 3148740 7 HPFS/NTFS
/dev/hda4 982 2491 12129075 f Win95 Ext\'d (LBA)
/dev/hda5 982 1504 4200966 83 Linux
/dev/hda6 1505 2027 4200966 b Win95 FAT32
/dev/hda7 2028 2289 2104483+ 83 Linux
/dev/hda8 2290 2420 1052226 83 Linux
/dev/hda9 2421 2471 409626 83 Linux
/dev/hda10 2472 2491 160618+ 82 Linux swap
Disk /dev/hdb: 128 heads, 63 sectors, 1023 cylinders
Units = cylinders of 8064 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdb1 * 1 520 2096608+ b Win95 FAT32
/dev/hdb2 521 910 1572480 83 Linux
/dev/hdb3 911 986 306432 83 Linux
/dev/hdb4 987 1023 149184 83 Linux
[root@gucuiwen root]#
掛裝點和空間使用情況:
[root@gucuiwen root]# df -h
Filesystem Size Used Avail Use% Mounted>/dev/hda1 3.0G 2.0G 839M 71% /
/dev/hda2 1.5G 990M 531M 66% /mnt/hda2
/dev/hda5 3.9G 2.8G 986M 75% /mnt/hda5
/dev/hda6 4.0G 1.6G 2.4G 40% /mnt/hda6
/dev/hda7 2.0G 1.2G 745M 62% /home
/dev/hda8 1011M 176M 784M 19% /mnt/hda8
/dev/hdb1 2.0G 1.8G 207M 90% /mnt/hdb1
/dev/hdb2 1.5G 185M 1.1G 14% /mnt/hdb2
none 125M 0 124M 0% /dev/shm
/dev/hda9 387M 180M 188M 49% /var
我把第一個硬盤分了三個主分區,以便在安裝多套系統的時候互不影響.至于為什么要分三個主分區,我在<充份利用多個主分區安裝多套系統>一文中已經說過.其好處是很多的.詳見:
http://go.6to23.com/gucuiwen/linux
我的硬盤雖然只有2OG,但是我卻分了9個分區,這也是為了管理方便經過多次劃分后做出的選擇. 首先我把linux的跟(/)裝在第一個主分區hda1.這個分區大小為3G,這上面包括:
/boot
/bin
/dev
/etc
/lib
/sbin
/usr
還有空目錄和掛裝點:
/opt
/mnt
/initrd
/var
/home
/proc
/misc
由于/boot /bin /dev /etc /lib /sbin 下的東西都比較小,沒有必要單獨劃分分區掛裝他們,事實上把這些目錄單獨劃分區掛裝反而不利,應為這些目錄中放著系統啟動時的關鍵信息和文件,系統啟動之初卻只掛裝上/分區,因此,萬一其中的某一個分掛裝失敗系統將不能正常啟動.比如/etc目錄中存放著系統軟的硬件配置信息,包括分區的掛裝點分區類型等配置信息,系統啟動的時候需要讀取這些信息,如果把/etc單獨放在一個小的分區上,系統啟動的時候到哪里去讀分區的掛裝點信息呢?類似的/sbin /dev等必需放在根分區上. 只有/boot中存放的是系統內核和引導工具,某些情況下為了解決一些老主板不支持大硬盤的情況下,才單獨在硬盤1024柱面以內分一個小分區裝/boot的內容.不過目前的主板大多不存在這個問題.另外/usr下的內容一般不經常改變,因此,我也把它放在/目錄上.可以看出,我是把所有文件大小不經常變化的,不會引起文件系統碎的所有東西裝在/分區上面.
另外,我分了2G的空間存放我自己平時下載的圖片和資料以及軟件等.掛裝在了/home目錄,重裝系統的時候不動這個分區,就算格式化也只格掉 / 分區, /var 和swap分區,其他分區上的內容都可以保留,在裝系統的時候再掛裝到系統里.
我的第二個主分區hda2暫時放著些臨時文件,平時主要是用來裝一些實驗性的系統的,比如出了一個新的linux版本,我就把它裝在這個分區里體驗,而swap /home可以和原來那套系統公用.
我的第三個主分區大小3G,我裝了WIN2K系統,由于現在Windows系統使用的比較少了,(主要是給沒有電腦的同學用)所以只分派了兩個區,一個安裝系統和常規的軟件,就是第三個主分區 hda3,文件系統格式為NTFS.另外一個是一個邏輯分區hda6大小為4G,文件系統為FAT32,主要用來零時性的裝裝電影啊音樂啊,虛擬光盤印象GHOST印象文件等.這兩個區在Windows下分別顯示為C盤和D盤.
下面說說其他的幾個邏輯分區:
分區設備名 掛裝點 文件系統 大小 作用
/dev/hda5 /mnt/hda5 ext3 4G 存放音樂,電影等大而固定不變的文件
/dev/hda6 /mnt/hda6 FAT32 4G Windows下的D盤
/dev/hda7 /home ext3 2G 我的文檔,下載的軟件,書籍,圖片等
/dev/hda8 /mnt/hda8 ext3 1G 編譯大型軟件用的零時分區.
/dev/hda9 /var ext3 400M 系統中經常變化大小的日志文件.
/dev/hda10 swap swap 160M 交換分區
對于已經進階的linux用戶,你可能不原意把硬盤分的那么細,甚至不分/home, /usr, /usr/local 但是/var是無論如何都應該分一下的.因為系統的所有日志文件,PID文件,RPM數據庫文件等等,這些大小經常發聲變化的文件都放在這個目錄下,所以這個目錄是最容易產生碎片的.如果不單獨分一個分區而混在/一起的話,很容易弄亂/文件系統,使系統性能下將,特別是一個多用戶環境和一個對外服務的網站主機系統,更應該如此,對于個人用戶這個分區有300~500M就可以了.
還有/tmp也是一個文件大小經常變化的目錄,但是對于個人用戶來說,里面內容很少,單獨分一個區也沒必要,但和/分區混在一起又總覺得有一種"一滴鼻涕毀一鍋粥"的感覺.我的解決方案是把原來的 /tmp目錄刪除,而作一個到 /var/tmp目錄的鏈接,就像系統本身就有的 /usr/tmp目錄一樣. 還有 /root 目錄大小也經常發生變化,我也把他刪除,作了一個到 /var/root的鏈接,這樣,系統中所有大小經常變化,易引起文件系統碎片的東西就全歸到 /var 分區上,這就叫"爛也只爛一個蘋果",以后可以只整理 /var 分區.
如何整理呢?通常我用一種最簡單的辦法:
用單用戶模式啟動系統 LILO: linux single 如果是用GRUB引導,在啟動時按字母 a,然后追加內核參數 linux single (這種模式不掛裝除/以外的其他文件系統,因此可以安全的對其他分區**作.) 然后刪掉一些你認為沒用的日志文件,再把/var 全考到其他地方去,接下來刪除原來/var 下的所由內容,最后把剛才復制的 /var 分區下的內容拷貝回去,經過這么搬動一次后,文件系統上的碎片就可以消除.ext3本來是一個碎量很少的優秀文件系統,據說比NTFS還要少的多,因此沒有必要經常這么做.
這里要提醒一點,把/tmp目錄刪除鏈接到 /var/tmp目錄后一定要把/var/tmp目錄的權限設置為 777否則普通用戶將無法啟動X.
如下圖:
[root@gucuiwen /]# ll
total 189
drwxr-xr-x 2 root root 4096 2月 3 02:21 bin
drwxr-xr-x 3 root root 4096 2月 2 18:36 boot
drwxr-xr-x 20 root root 118784 2月 11 20:10 dev
drwxr-xr-x 59 root root 4096 2月 11 20:10 etc
drwxr-xr-x 22 root root 4096 2月 10 16:53 home
drwxr-xr-x 2 root root 4096 6月 22 2001 initrd
drwxr-xr-x 7 root root 4096 2月 6 23:29 lib
drwx------ 2 root root 16384 2月 3 01:54 lost+found
drwxr-xr-x 2 root root 4096 8月 27 2002 misc
drwxr-xr-x 12 root root 4096 2月 8 20:57 mnt
drwxr-xr-x 2 root root 4096 8月 24 1999 opt
dr-xr-xr-x 73 root root 0 2月 12 2004 proc
lrwxrwxrwx 1 root root 10 2月 2 18:29 root -> /var/root/
drwxr-xr-x 2 root root 8192 2月 6 23:29 sbin
lrwxrwxrwx 1 root root 9 2月 2 18:29 tmp -> /var/tmp/
drwxr-xr-x 17 root root 4096 2月 2 20:16 usr
drwxr-xr-x 23 root root 1024 2月 7 21:57 var
drwxr-xr-x 8 root root 4096 2月 6 23:25 www
[root@gucuiwen /]# ll -d /var/tmp
drwxrwxrwt 14 root root 1024 2月 12 01:04 /var/tmp
[root@gucuiwen /]#
當然由于很多用戶還舍棄不下Windows系統,并且大部份時間都在用Windows系統,所以可以把我格式化成ext3格式的 hda5 hda7等分區格式化成fat32文件系統,這樣在Windows和linux下都可以很方便的使用這些分區,兩者兼顧.這里的方案也只是一個范例,用戶可以根據自己硬盤的實際大小來劃分.
文章來自:http://tech.hlzi.com/html/2007/0904/219239.html