前兩天安裝SUSE enterprise linux 11的時候,碰到了建立磁盤分區表類型這個問題,有兩個選項:MSDOS和GPT。這就讓我很糾結了,搞不懂這兩個概念是什麼意思,來從信息描述能夠看出是關於磁盤上至關重要的分區表結構,因此對其的準確瞭解很重要。linux
MSDOS:
![](http://static.javashuo.com/static/loading.gif)
現有的PC機架構,大可能是沿用了數十年的主板BIOS+硬盤MBR分區的這種組合模式,在這種模式下磁盤分區表類型就稱爲MSDOS,也可稱爲MBR格式。
MBR是主引導記錄(Master Boot Record),也就是現有的硬盤分區表的存放地點,在1024扇區以內。MBR格式的標準決定了MBR只支持在2TB如下的硬盤,若是硬盤超過2TB時,只能管理到2TB!
MSDOS格式的分區表支持的最大卷爲2 TB (terabytes),而且每一個磁盤最多隻能有4個主分區(或3個主分區,1個擴展分區和無限制的邏輯分區)
在linux下,fdisk命令只能用來操做MSDOS格式的分區表。
--------------------------------------------分割線--------------------------------------------
GPT:
GPT分區表數據結構sql
隨着磁盤技術愈來愈先進,使用垂直磁化和巨磁阻磁頭,出現了容量遠超於傳統磁盤的容量,因此爲了克服BIOS+MBR的2TB、4分區限制,就出現了
EFI+GPT的模式。
2004年,微軟和英特爾共同推出一種名爲可擴展固件接口(EFI)的主板升級換代方案。EFI,便可擴展固件接口(Extensible Firmware Interface),EFI的位置很特殊,不像是BIOS那樣是固件又是接口,EFI只是一個接口,位於操做系統與平臺固件之間。到目前爲止,現有的PC機主板絕大部分仍是BIOS模式,EFI主板寥寥可數。
GPT,全局惟一標識分區表(GUID Partition Table)。GPT是EFI方案的一部分,但並不依賴於EFI主板,在BIOS主板的PC中也可以使用GPT分區。與MBR最大4個分區表項的限制相比,
GPT對分區數量沒有限制,但Windows最大僅支持128個GPT分區。
GPT可管理硬盤大小達到了18EB(1EB=1024PB=1,048,576TB),不過NTFS格式最大僅支持256TB。
GPT的分區信息是在分區中,而不象MBR同樣在主引導扇區,相當重要的平臺操做數據位於分區,而不是位於非分區或隱藏扇區。另外,GPT 分區磁盤有多餘的主要及備份分區表來提升分區數據結構的完整性。容許將主磁盤分區表和備份磁盤分區表用於冗餘,支持惟一的磁盤和分區ID。
爲保護GPT不受MBR類磁盤管理軟件的危害,GPT在主引導扇區創建了一個保護分區(Protective MBR)的MBR分區表,這種分區的類型標識爲0xEE,這個保護分區的大小在Windows下爲128MB,Mac OS X下爲200MB,在Window磁盤管理器里名爲GPT保護分區,可以讓MBR類磁盤管理軟件把GPT當作一個未知格式的分區,而不是錯誤地當成一個未分區的磁盤
在linux下,對GPT格式分區表的操做是經過parted命令
- #parted /dev/sda
-
-
-
- (parted)mklabel gpt //在磁盤sda上寫上GPT格式分區表
- (parted)mkpartfs primary ext3 0 -1 //將整個磁盤建立爲1個主分區,並使用ext3文件系統。
- (parted)print
- (parted)quit
PS:當使用GPT格式時,若是存儲方式是按照MBR的磁盤1027磁柱內存放的,則不使用EFI主板便可啓動,也就是GPT也可使用BIOS啓動,不然,
分區表使用GPT格式,而且配備2TB以上磁盤,也必須使用EFI主板,並且操做系統也必須支持GPT分區表!