【轉】LINUX下的分區規劃

最近有幾個好友,多次詢問我關於Linux下硬盤分區的一些心得體會。今天抽空,整理了這篇文章,與各位共同探討如下。
 
  首先,我推薦大家使用 ext3 、ReiserFS 和 XFS 日誌式文件系統。這兩種文件系統格式在LINUX下運行安全性高,在突發的意外宕機情況下,不需要檢查任何數據的一致性,使得系統恢復時間從幾小時縮短爲幾秒鐘,同時又能很好的保證數據的完好性,運行的速度也比較快。下面我來簡單介紹一下這兩個文件系統的相關知識、在Ubuntu系統下的安裝目錄用途以及我的一些分區經驗與各位分享如下:
 
1、Ext3
  RedHat的缺省文件系統。相對於Ext2,增加了日誌功能,PartitionMagic可兼容,建議新手使用此文件系統。Ext3的3種模式可用mount命令進行轉換:
  (1) data=journal:文件數據和元數據均設置爲日誌方式,性能開銷比較大
  (2) data=ordered (缺省設置):順序寫入,先寫文件數據,再寫元數據
  (3) data=writeback:提供最快的訪問速度,但是犧牲了數據的一致性。元數據仍然被記錄到日誌,從而確保元數據的完整。文件數據會在系統崩潰之後恢復到原先的狀態。
  
2、ReiserFS
  SUSE LINUX的缺省文件系統。但Red Hat Enterprise Linux AS不支持ReiserFS,推薦高手使用此文件系統,該文件系統有以下3個優點:
  (1) 有效地利用磁盤空間,與其他文件系統不同,ResierFS不依賴於數據塊的大小。處理大量小文件存儲操作很有優勢,產生的磁盤碎片也很少;
  (2) 提高了可靠性和恢復速度;
  (3) 使用平衡樹數據結構可以同時存儲內容數據和安全元數據,使其獲得更快的訪問速度。
 
3、XfS
  XfS文件系統是SGI開發的高級日誌文件系統,XFS極具伸縮性,非常健壯。所幸的是SGI將其移植到了Linux系統中。在linux環境下。目前版本可用的最新XFS文件系統的爲1.2版本,可以很好地工作在2.4核心下。主要特性包括以下幾點:
  (1) 數據完全性
   採用XFS文件系統,當意想不到的宕機發生後,首先,由於文件系統開啓了日誌功能,所以你磁盤上的文件不再會意外宕機而遭到破壞了。不論目前文件系統上存儲的文件與數據有多少,文件系統都可以根據所記錄的日誌在很短的時間內迅速恢復磁盤文件內容。
  (2) 傳輸特性
   XFS文件系統採用優化算法,日誌記錄對整體文件操作影響非常小。XFS查詢與分配存儲空間非常快。xfs文件系統能連續提供快速的反應時間。經對XFS、JFS、Ext3、ReiserFS文件系統進行過測試,XFS文件文件系統的性能表現相當出衆。
  (3) 可擴展性
   XFS 是一個全64-bit的文件系統,它可以支持上百萬T字節的存儲空間。對特大文件及小尺寸文件的支持都表現出衆,支持特大數量的目錄。最大可支持的文件大小爲263 = 9 x 1018 = 9 exabytes,最大文件系統尺寸爲18 exabytes。
   XFS使用高的表結構(B+樹),保證了文件系統可以快速搜索與快速空間分配。XFS能夠持續提供高速操作,文件系統的性能不受目錄中目錄及文件數量的限制。
  (4) 傳輸帶寬
   XFS 能以接近裸設備I/O的性能存儲數據。在單個文件系統的測試中,其吞吐量最高可達7GB每秒,對單個文件的讀寫操作,其吞吐量可達4GB每秒。
 
4、主分區、擴展分區和邏輯分區
    (1) 主分區:是一個比較單純的分區,通常位於硬盤的最前面一塊區域中,構成邏輯C磁盤。在主分區中,不允許再建立其它邏輯磁盤。
  (2) 邏輯分區:由於硬盤僅僅爲分區表保留了64個字節的存儲空間,而每個分區的參數佔據16個字節,故主引導扇區中總計可以存儲4個分區的數據。操作系統只允許存儲4個分區的數據,如果說邏輯磁盤就是分區,則系統最多隻允許4個邏輯磁盤。對於具體的應用,4個邏輯磁盤往往不能滿足實際需求。爲了建立更多的邏輯磁盤供操作系統使用,系統引入了擴展分區的概念。
  (3) 擴展分區:嚴格地講它不是一個實際意義的分區,它僅僅是一個指向下一個分區的指針,這種指針結構將形成一個單向鏈表。這樣在主引導扇區中除了主分區外,僅需要存儲一個被稱爲擴展分區的分區數據,通過這個擴展分區的數據可以找到下一個分區(實際上也就是下一個邏輯磁盤)的起始位置,以此起始位置類推可以找到所有的分區。無論系統中建立多少個邏輯磁盤,在主引導扇區中通過一個擴展分區的參數就可以逐個找到每一個邏輯磁盤。
  需要特別注意的是,由於主分區之後的各個分區是通過一種單向鏈表的結構來實現鏈接的,因此,若單向鏈表發生問題,將導致邏輯磁盤的丟失。
 
5、目錄功能
   / :根分區 包含 /etc、/bin、/sbin、/lib 和 /dev,否則您將不能啓動系統。
  /usr:包含所有的用戶程序(/usr/bin),庫文件(/usr/lib),文檔(/usr/share/doc),等等。這是文件系統中耗費空間最多的部分。您需要提供至少 500MB 磁盤空間。總容量會依據您要安裝的軟件包數量和類型增長。寬鬆的工作站或服務器安裝應該需要 4–6GB。
  /var:所有的可變數據,如新聞組文章、電子郵件、網站、數據庫、軟件包系統的緩存等等,將被放入這個目錄。這個目錄的大小取決於您計算機的用途,但是對大多數人來說,將主要用於軟件包系統的管理工具。
  /tmp: 程序創建的臨時數據大都存到這個目錄。通常 40–100 MB 應該足夠。一些應用程序 — 包括歸檔處理程序、CD/DVD 製作工具和多媒體軟件 — 可能會使用 /tmp 臨時保存映像文件。
  /home:每個用戶將放置他的私有數據到這個目錄的子目錄下。其大小取決於將有多少用戶使用系統,以及有什麼樣文件放在他們的目錄下。根據規劃的用途,應該爲每個用戶準備 100MB 空間,不過應該按您的需求調整。假如您在 home 目錄下計劃保存大量的多媒體文件(圖片、MP3、電影),該預備更多的空間。
  /opt:附加的應用程序軟件包。
 
6、分區經驗
  (1) 最少得有 2 個分區,一個是 /swap 交換分區,一個是 / 根分區。
  (2) 近幾年,硬盤的價格也越來越便宜了,花二三百塊錢,就能買到很大的硬盤。我以25G的分區爲例,其餘多出來的磁盤空間,可在系統安裝完成後,登陸系統後用分區管理工具劃分即可,可用於專門的數據存儲和備份空間。
  /   計算所得的剩餘硬盤大小,主分區,啓動標誌開始,Ext3格式,5-10G;
  /HOME  5G,邏輯分區,Ext3格式;
  /USR   6G,邏輯分區,Ext3格式;
  /VAR   4G,邏輯分區,Ext3格式;
  /TMP   1G,邏輯分區,Ext3格式;
  /OPT   1G,邏輯分區,Ext3格式;
  swap 與內存大小一致,最大1G即可,邏輯分區,啓動標誌開始。
  

 
 
7、XFS的安裝、加載與設備:
  (1) 安裝:
  從
[url]http://oss.sgi.com/projects/xfs/[/url] 獲取下載兩種補丁包:release 和 development tree,以及tools 文件包。我下載了development tree 的all補丁包和各個tools包,其中包含了xfs文件系統補丁、acl等,可以自己看一下。文件名是xfs-2.4.20-all-i386.bz2。然後就是例行公事:bzip2 -d xfs-2.4.20-all-i386.bz2,把解出來的東西放到kernel中執行patch -p1 < xfs-2.4.20-all-i386 。注意對應好正確的kernel 版本。
  make config ,在file system中把xfs系統加入,如果需要啓動,那麼就不能編譯成模塊,或是後期mkinitrd。這裏需要加入的選項還有quota和acl,我相信任何人都不會拒絕的。還有其他選項可以不用,dmapi現在還沒有什麼linux應用;realtime 是提供了實時子卷的支持。確定好你需要的功能(這裏注意,不要同時選擇ibm的jfs系統。如果一定要用,需要補丁。),然後我們就可以保存退出。例行公事:make dep;make bzImage;make modules;make modules_install 。
  (2) 加載:
  重啓以後,我們就擁有了一個支持xfs文件系統的linux。然後我們就可以把需要轉化爲xfs系統的mount點確定,我幾乎選擇了所有mount區,除了/,/boot。規劃完畢後,備份你的系統和需要轉換的mount點。然後,umount 你需要xfs的區。接下來我們就可以實現xfs了,mkfs.xfs -L volume [filesystem](具體察看man 手冊,爲了更好的性能,我們可以使用更多的控制,例如log size等。有時候調整是必須的,因爲xfs畢竟是爲高端服務器設置的。)。完成以後,修改fstab,重新mount 系統,恢復備份就可以使用了。
  (3) 設置:
  還記得我們在ext文件系統中對於細粒度控制的無可奈何嗎?只有三個權限;對於quota反覆的提問嗎?現在我們不需要爲這些煩惱了。
  acl:提供了細粒度的權限控制。通過幾個工具:getfacl和setfacl。如我要在一個文件上加上某個用戶的寫權限,只需要setfacl -m u:user:w file。然後getfacl file,ok。其他問題man手冊。
  quota:忘掉ext的quota 多麼痛苦吧。兩步就可以解決,在fstab中需要的mount點上加入quota,重新mount後,edquota user or group,保存退出,立即生效。
  還有一些其他的功能如:提供了一個附加的attr等等。
本文出自 “分享陽光” 博客,請務必保留此出處[url]http://yuanxf.blog.51cto.com/15066/77943[/url]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章