日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Linux GPT和parted命令詳解

 笑觀云卷云舒 2015-12-04

GPT概述

全局唯一標(biāo)識分區(qū)表(GUID Partition Table,縮寫:GPT)是一個實(shí)體硬盤的分區(qū)結(jié)構(gòu)。它是可擴(kuò)展固件接口標(biāo)準(zhǔn)的一部分,用來替代BIOS中的主引導(dǎo)記錄分區(qū)表。 傳統(tǒng)的主啟動記錄 (MBR) 磁盤分區(qū)支持最大卷為 2.2 TB (terabytes) ,每個磁盤最多有 4 個主分區(qū)(或 3 個主分區(qū),1 個擴(kuò)展分區(qū)和無限制的邏輯驅(qū)動器)。 與MBR 分區(qū)方法相比,GPT 具有更多的優(yōu)點(diǎn),因?yàn)樗试S每個磁盤有多達(dá) 128 個分區(qū),支持高達(dá) 18 千兆兆字節(jié) (exabytes,1EB=10^6TB) 的卷大小,允許將主磁盤分區(qū)表和備份磁盤分區(qū)表用于冗余,還支持唯一的磁盤和分區(qū) ID (GUID)。
與 MBR 分區(qū)的磁盤不同,GPT的分區(qū)信息是在分區(qū)中,而不象MBR一樣在主引導(dǎo)扇區(qū)。為保護(hù)GPT不受MBR類磁盤管理軟件的危害,GPT在主引導(dǎo)扇區(qū)建立了一 個保護(hù)分區(qū) (Protective MBR)的MBR分區(qū)表,這種分區(qū)的類型標(biāo)識為0xEE,這個保護(hù)分區(qū)的大小在Windows下為128MB,Mac OS X下為200MB,在Window磁盤管理器里名為GPT保護(hù)分區(qū),可讓MBR類磁盤管理軟件把GPT看成一個未知格式的分區(qū),而不是錯誤地當(dāng)成一個未分 區(qū)的磁盤。另外,GPT 分區(qū)磁盤有多余的主要及備份分區(qū)表來提高分區(qū)數(shù)據(jù)結(jié)構(gòu)的完整性。

在MBR硬盤中,分區(qū)信息直接存儲于主引導(dǎo)記錄(MBR)中(主引導(dǎo)記錄中還存儲著系統(tǒng)的引導(dǎo)程序)。但在GPT硬盤中,分區(qū)表的位置信息儲存在GPT頭中。但出于兼容性考慮,硬盤的第一個扇區(qū)仍然用作MBR,之后才是GPT頭。跟現(xiàn)代的MBR一樣,GPT也使用邏輯區(qū)塊地址(LBA)取代了早期的CHS尋址方式。傳統(tǒng)MBR信息存儲于LBA 0,GPT頭存儲于LBA 1,接下來才是分區(qū)表本身。64位Windows操作系統(tǒng)使用16,384字節(jié)(或32扇區(qū))作為GPT分區(qū)表,接下來的LBA 34是硬盤上第一個分區(qū)的開始。為了減少分區(qū)表損壞的風(fēng)險,GPT在硬盤最后保存了一份分區(qū)表的副本。與主啟動記錄 (MBR) 分區(qū)方法相比,GPT 具有更多的優(yōu)點(diǎn),因?yàn)樗试S每個磁盤有多達(dá) 128 個分區(qū),支持高達(dá)18 千兆兆字節(jié)的卷大小,允許將主磁盤分區(qū)表和備份磁盤分區(qū)表用于冗余,還支持唯一的磁盤和分區(qū)ID(GUID)。

GPT結(jié)構(gòu)

GPT的結(jié)構(gòu)見下圖

傳統(tǒng)MBR (LBA 0) 
在GPT分區(qū)表的最開頭,處于兼容性考慮仍然存儲了一份傳統(tǒng)的MBR,用來防止不支持GPT的硬盤管理工具錯誤識別并破壞硬盤中的數(shù)據(jù),這個MBR也叫做保護(hù)MBR。在支持從GPT啟動的操作系統(tǒng)中,這里也用于存儲第一階段的啟動代碼。在這個MBR中,只有一個標(biāo)識為0xEE的分區(qū),以此來表示這塊硬盤使用GPT分區(qū)表。不能識別GPT硬盤的操作系統(tǒng)通常會識別出一個未知類型的分區(qū),并且拒絕對硬盤進(jìn)行操作,除非用戶特別要求刪除這個分區(qū)。這就避免了意外刪除分區(qū)的危險。另外,能夠識別GPT分區(qū)表的操作系統(tǒng)會檢查保護(hù)MBR中的分區(qū)表,如果分區(qū)類型不是0xEE或者M(jìn)BR分區(qū)表中有多個項(xiàng),也會拒絕對硬盤進(jìn)行操作。
在使用MBR/GPT混合分區(qū)表的硬盤中,這部分存儲了GPT分區(qū)表的一部分分區(qū)(通常是前四個分區(qū)),可以使不支持從GPT啟動的操作系統(tǒng)從這個MBR啟動,啟動后只能操作MBR分區(qū)表中的分區(qū)。如Boot Camp就是使用這種方式啟動Windows。
分區(qū)表頭 (LBA 1) 
分區(qū)表頭定義了硬盤的可用空間以及組成分區(qū)表的項(xiàng)的大小和數(shù)量。在使用64位Windows Server 2003的機(jī)器上,最多可以創(chuàng)建128個分區(qū),即分區(qū)表中保留了128個項(xiàng),其中每個都是128字節(jié)。(EFI標(biāo)準(zhǔn)要求分區(qū)表最小要有16,384字節(jié),即128個分區(qū)項(xiàng)的大?。?br>分區(qū)表頭還記錄了這塊硬盤的GUID,記錄了分區(qū)表頭本身的位置和大?。ㄎ恢每偸窃贚BA 1)以及備份分區(qū)表頭和分區(qū)表的位置和大?。ㄔ谟脖P的最后)。它還儲存著它本身和分區(qū)表的CRC32校驗(yàn)。固件、引導(dǎo)程序和操作系統(tǒng)在啟動時可以根據(jù)這個校驗(yàn)值來判斷分區(qū)表是否出錯,如果出錯了,可以使用軟件從硬盤最后的備份GPT中恢復(fù)整個分區(qū)表,如果備份GPT也校驗(yàn)錯誤,硬盤將不可使用。所以GPT硬盤的分區(qū)表不可以直接使用16進(jìn)制編輯器修改。
分區(qū)表頭的格式如下

起始字節(jié)長度內(nèi)容
08字節(jié)簽名("EFI PART", 45 46 49 20 50 41 52 54)
84字節(jié)修訂(在1.0版中,值是 00 00 01 00)
124字節(jié)分區(qū)表頭的大小(單位是字節(jié),通常是92字節(jié),即 5C 00 00 00)
164字節(jié)分區(qū)表頭(第0-91字節(jié))的CRC32 校驗(yàn),在計(jì)算時,把這個字段作為0處理,需要計(jì)算出分區(qū)串行的CRC32校驗(yàn)后再計(jì)算本字段
204字節(jié)保留,必須是 0
248字節(jié)當(dāng)前LBA(這個分區(qū)表頭的位置)
328字節(jié)備份LBA(另一個分區(qū)表頭的位置)
408字節(jié)第一個可用于分區(qū)的LBA(主分區(qū)表的最后一個LBA + 1)
488字節(jié)最后一個可用于分區(qū)的LBA(備份分區(qū)表的第一個LBA ? 1)
5616字節(jié)硬盤GUID(在類UNIX 系統(tǒng)中也叫UUID)
728字節(jié)分區(qū)表項(xiàng)的起始LBA(在主分區(qū)表中是2)
804字節(jié)分區(qū)表項(xiàng)的數(shù)量
844字節(jié)一個分區(qū)表項(xiàng)的大?。ㄍǔJ?28)
884字節(jié)分區(qū)串行的CRC32校驗(yàn)
92*保留,剩余的字節(jié)必須是0(對于512字節(jié)LBA的硬盤即是420個字節(jié))

主分區(qū)表和備份分區(qū)表的頭分別位于硬盤的第二個扇區(qū)(LBA 1)以及硬盤的最后一個扇區(qū)。備份分區(qū)表頭中的信息是關(guān)于備份分區(qū)表的。

分區(qū)表項(xiàng) (LBA 2–33) 
GPT分區(qū)表使用簡單而直接的方式表示分區(qū)。一個分區(qū)表項(xiàng)的前16字節(jié)是分區(qū)類型GUID。例如,EFI系統(tǒng)分區(qū)的GUID類型是{C12A7328-F81F-11D2-BA4B-00A0C93EC93B}。接下來的16字節(jié)是該分區(qū)唯一的GUID(這個GUID指的是該分區(qū)本身,而之前的GUID指的是該分區(qū)的類型)。再接下來是分區(qū)起始和末尾的64位LBA編號,以及分區(qū)的名字和屬性。
GPT分區(qū)表項(xiàng)的格式如下

起始字節(jié)長度內(nèi)容
016字節(jié)分區(qū)類型GUID
1616字節(jié)分區(qū)GUID
328字節(jié)起始LBA(小端序 )
408字節(jié)末尾LBA
488字節(jié)屬性標(biāo)簽(如:60 表示“只讀”)
5672字節(jié)分區(qū)名(可以包括36個UTF-16(小端序)字符)

parted概述 

上文介紹了GPT,由于常見的fdisk不支持GPT(在硬盤容量大于2Tb的時候無法使用fdisk進(jìn)行分區(qū)的管理),故在IA64平臺上管理磁盤時parted還是相當(dāng)實(shí)用的,GNU Parted 具有豐富的功能,它除了能夠進(jìn)行分區(qū)的添加、刪除等常見操作外,還可以進(jìn)行移動分區(qū)、創(chuàng)建文件系統(tǒng)、調(diào)整文件系統(tǒng)大小、復(fù)制文件系統(tǒng)等操作。它可以處理最常見的分區(qū)格式,包括:ext2,ext3,fat16,fat32,NTFS,ReiserFS,JFS,XFS,UFS,HFS,以及Linux交換分區(qū)。 
parted 命令格式 
parted 有兩種運(yùn)行模式:命令行模式和交互模式。與 fdisk 的交互模式交互模式不同,在 parted 的交互模式下執(zhí)行命令,一旦按回車鍵確認(rèn),命令就馬上執(zhí)行,對磁盤的更改就立刻生效。
parted 命令的常用格式是:
1、# parted [選項(xiàng)] <硬盤設(shè)備名>
2、# parted [選項(xiàng)] <硬盤設(shè)備名> <子命令> [<子命令參數(shù)>]
格式(1)用于進(jìn)入parted 的交互模式,在該模式下輸入parted的子命令對指定的硬盤進(jìn)行分區(qū)等操作。quit 命令用于退出交互模式。
格式(2)直接在命令行方式下對指定的硬盤進(jìn)行分區(qū)等操作。
其中常用的選項(xiàng)為:
-h, ––help — 顯示求助信息
-i, ––interactive — 在必要時提示用戶
-l, ––list — 顯示所有磁盤設(shè)備的分區(qū)表
-s, ––script — 從不提示用戶
-v, ––version — 顯示版本
無論哪種模式,在parted中都可以使用若干子命令,見下表。

命令 
說明
help [COMMAND]打印命令的幫助信息,或指定命令的幫助信息
print  [free|NUMBER|all]    顯示分區(qū)表, 指定編號的分區(qū), 或所有設(shè)備的分區(qū)表
mkpart PART-TYPE [FSTYPE] START END創(chuàng)建新分區(qū)。PART-TYPE 是以下類型之一:primary(主分 區(qū))、extended(擴(kuò)展分區(qū))、logical(邏輯分區(qū))。START 和 END 是新分區(qū)開始和結(jié)束的具體位置。
rm NUMBER刪除指定編號 NUMBER 的分區(qū)。
set NUMBER FLAG STATE對指定編號 NUMBER 的分區(qū)設(shè)置分區(qū)標(biāo)記 FLAG。對于 PC 常用的 msdos 分區(qū)表來說,分區(qū)標(biāo)記 FLAG 可有如下值:”boot”(引導(dǎo)), “hidden”(隱藏), “raid”(軟RAID磁盤陣), “l(fā)vm”(邏輯卷), “l(fā)ba” (LBA,Logic Block Addressing模式)。 狀態(tài)STATE 的取值是:on 或 off
unit UNIT設(shè)置默認(rèn)輸出時表示磁盤大小的單位為 UNIT,UNIT 的常用取值可以為:‘MB’、‘GB’、‘%’(占整個磁盤設(shè)備的百分之多少)、‘compact’(人類易讀方式,類似于 df 命令中 -h 參數(shù)的用)、‘s’(扇區(qū))、‘cyl’ (柱面)、‘chs’ (柱面cylinders:磁頭 heads:扇區(qū) sectors 的地址)
mkfs NUMBER FS-TYPE對指定編號 NUMBER 的分區(qū)創(chuàng)建指定類型 FS-TYPE 的文件系 統(tǒng)。
mkpartfs PART-TYPE FSTYPE START END創(chuàng)建新分區(qū)同時創(chuàng)建文件系統(tǒng)。FS-TYPE 是以下類型一:ext2、fat16、fat32、linuxswap、NTFS、reiserfs、ufs 等
cp [FROM-DEVICE] FROM-NUMBER TONUMBER將分區(qū) FROM-NUMBER 上的文件系統(tǒng)完整地復(fù)制到分區(qū)TO-NUMBER 中,作為可選項(xiàng)還可以指定一個來源硬盤的設(shè)備名稱FROM-DEVICE,若省略則在當(dāng)前設(shè)備上進(jìn)行復(fù)制。
move NUMBER START END將指定編號 NUMBER 的分區(qū)移動到從 START 開始 END 結(jié)束的位置上。注意:(1)只能將分區(qū)移動到空閑空間中。(2)雖然分區(qū)被移動了,但它的分區(qū)編號是不會改變的
resize NUMBER START END對指定編號 NUMBER 的分區(qū)調(diào)整大小。分區(qū)的開始位置和結(jié)束位置由 START 和 END 決定
check NUMBER
檢查指定編號 NUMBER 分區(qū)中的文件系統(tǒng)是否有什么錯誤
rescue START END恢復(fù)靠近位置 START 和 END 之間的分區(qū)
mklabel,mktable LABELTYPE創(chuàng)建一個新的 LABEL-TYPE 類型的空磁盤分區(qū)表,對于PC而言 msdos 是常用的 LABELTYPE。 若是用 GUID 分區(qū)表,LABEL-TYPE 應(yīng)該為 gpt

parted使用實(shí)例 
# parted /dev/sdd
GNU Parted 1.8.1
Using /dev/sdd
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 27.1GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
                                                        
(parted) print             #查看分區(qū)信息                                               
Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 27.1GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  Flags
 1      16.4kB  4001MB  4001MB  primary                     
 4      4001MB  4703MB  701MB   extended                    
 5      4001MB  4102MB  101MB   logical                     
 6      4102MB  4203MB  101MB   logical                     
 7      4203MB  4303MB  101MB   logical                     
 8      4303MB  4404MB  101MB   logical                     
 9      4404MB  4416MB  11.5MB  logical                     
10      4416MB  4437MB  21.0MB  logical                     
11      4437MB  4468MB  31.4MB  logical                     
12      4468MB  4509MB  40.9MB  logical   ext3              

(parted) mkpart    
              #創(chuàng)建新的分區(qū)                                        
Partition type?  primary/logical? l                                       
File system type?  [ext2]? ext3                                           
Start? 4509MB                                                             
End? -1s        # 表示硬盤最后一個扇區(qū),就是硬盤的最末尾處 

Warning: You requested a partition from 4509MB to 27.1GB.                 
The closest location we can manage is 4516MB to 4697MB.  Is this still acceptable to you?
Yes/No? y                                                                 
(parted) print                                                            
Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 27.1GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  Flags
 1      16.4kB  4001MB  4001MB  primary                     
 4      4001MB  4703MB  701MB   extended                    
 5      4001MB  4102MB  101MB   logical                     
 6      4102MB  4203MB  101MB   logical                     
 7      4203MB  4303MB  101MB   logical                     
 8      4303MB  4404MB  101MB   logical                     
 9      4404MB  4416MB  11.5MB  logical                     
10      4416MB  4437MB  21.0MB  logical                     
11      4437MB  4468MB  31.4MB  logical                     
12      4468MB  4509MB  40.9MB  logical   ext3              
13      4516MB  4697MB  181MB   logical                     

(parted) unit s              
#設(shè)置單位為扇區(qū)                                         
(parted) print                                                            

Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 52953087s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start     End       Size      Type      File system  Flags
 1      32s       7815167s  7815136s  primary                     
 4      7815168s  9185279s  1370112s  extended                    
 5      7815200s  8011775s  196576s   logical                     
 6      8011808s  8208383s  196576s   logical                     
 7      8208416s  8404991s  196576s   logical                     
 8      8405024s  8601599s  196576s   logical                     
 9      8601632s  8624127s  22496s    logical                     
10      8624160s  8665087s  40928s    logical                     
11      8665120s  8726527s  61408s    logical                     
12      8726560s  8806399s  79840s    logical   ext3              
13      8819748s  9173114s  353367s   logical                     

(parted) rm 13               
#刪除分區(qū)13                                                               
(parted) p

Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 52953087s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start     End       Size      Type      File system  Flags
 1      32s       7815167s  7815136s  primary                     
 4      7815168s  9185279s  1370112s  extended                    
 5      7815200s  8011775s  196576s   logical                     
 6      8011808s  8208383s  196576s   logical                     
 7      8208416s  8404991s  196576s   logical                     
 8      8405024s  8601599s  196576s   logical                     
 9      8601632s  8624127s  22496s    logical                     
10      8624160s  8665087s  40928s    logical                     
11      8665120s  8726527s  61408s    logical                     
12      8726560s  8806399s  79840s    logical   ext3              

(parted) set 12 lvm on          
#將分區(qū)12的lvm標(biāo)志打開,這里僅打開標(biāo)志,并未實(shí)際創(chuàng)建lv 
(parted) p                                                                

Model: OPNFILER VIRTUAL-DISK (scsi)
Disk /dev/sdd: 52953087s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start     End       Size      Type      File system  Flags
 1      32s       7815167s  7815136s  primary                     
 4      7815168s  9185279s  1370112s  extended                    
 5      7815200s  8011775s  196576s   logical                     
 6      8011808s  8208383s  196576s   logical                     
 7      8208416s  8404991s  196576s   logical                     
 8      8405024s  8601599s  196576s   logical                     
 9      8601632s  8624127s  22496s    logical                     
10      8624160s  8665087s  40928s    logical                     
11      8665120s  8726527s  61408s    logical                     
12      8726560s  8806399s  79840s    logical   ext3         lvm 


(parted) q                
#退出交換模式                                                
Information: Don't forget to update /etc/fstab, if necessary.

# parted -l /dev/sda             # 直接在命令模式下顯示sda的分區(qū)表

Model: VMware, VMware Virtual S (scsi)

Disk /dev/sda: 8590MB

Sector size (logical/physical): 512B/512B

Partition Table: msdos

Number Start End Size Type File system 標(biāo)志

1 32.3kB 107MB 107MB 主分區(qū) ext3 啟動

2 107MB 8587MB 8480MB 主分區(qū) lvm

Model: VMware, VMware Virtual S (scsi)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多