磁碟分割槽分析

2022-09-14 17:18:18 字數 2679 閱讀 8793

今天在給安裝centos虛擬機器時,突然開始思考製作u盤啟動盤的原理,一直想不明白有了iso檔案為什麼還要工具製作啟動盤,後來發現因為iso是磁碟的整個映象檔案,說到底他也只是個檔案,如果直接拷貝的話,檔案系統會把它放到乙個不知道的地方,而我們需要這個磁碟映象從第乙個扇區完完整整的寫入磁碟,其實u盤啟動盤製造工具起了linux中dd命令的作用,因此要用工具刻入,而不能直接複製進去。後面又心血來潮想複習一下mbr和gpt的知識,順便看一眼自己的磁碟情況。

uefi與bios、gpt與mbr的區別 csdn

mbr與gpt 知乎 老狼

可以看到本機上有一整塊的磁碟,總大小為476.92gb,共有如下五個分割槽:

根據微軟官方給出的解釋,efi系統分割槽用來存放啟動作業系統的啟動**,恢復分割槽用來存放一些特殊工具,在系統出錯時可以幫助你恢復windows,而c盤、e盤和d盤用來存放資料,其中windows作業系統資料存放在c盤。

可是你的電腦真的只有五個分割槽嗎?

使用管理員許可權開啟winhex.exe

點選file,建立新的case

建立完成後再次點選file,點選add medium,然後選擇整塊磁碟

檢視結果

可以看到這塊gpt分割槽的磁碟共有六個分割槽,但partition 2他的檔案系統是未知的。其他五個分割槽分別對應著上面說的五個分割槽,這時候也能明白下圖中磁碟分割槽1和磁碟分割槽6的意義了。

繼續分析,我們來看一下起始扇區,gpt的第乙個sector被稱為pmbr,第二個扇區是表頭,接著32個扇區是分割槽表,剩下的是資料。

其中第乙個扇區,在原始mbr分割槽表中,分割槽型別使用ee來表明是gpt分割槽,範圍從lba 0x01到0xffffffff,識別不了該標誌的legacy bios此時就會啟動作業系統失敗,而不會亂寫入資料破壞分割槽;可以指別gpt分割槽的uefi或legacy bios可以明白這是乙個gpt分割槽而不是mbr分割槽。

第二扇區存放gpt表頭,定義了硬碟的可用空間以及組成分割槽表的項的大小和數量。在使用64位windows server2003的機器上,最多可以建立128個分割槽,即分割槽表中保留了128個項,其中每個都是128位元組。

起始位元組

偏移量內容016

分割槽型別guid

1616

分割槽guid328

起始lba(小端格式)408

末尾lba488

分割槽屬性

5672

分割槽名字

後面的三十二個扇區都為分割槽表,由於本電腦上只有六個分割槽,因此只需要看前兩個扇區就好。

我們先來分析分割槽1

可以從分割槽名字上看出,分割槽1為efi system partition(esp),他的分割槽型別guid其實也證明了這一點。

該分割槽屬性中63位為1,表示不自動掛載,也就是不自動分配碟符,這就是為什麼我們只能看到c、d、e分割槽而看不到該分割槽的原因。

efi system partition分割槽存放著系統啟動檔案,可以看到裡面都是uefi相關的檔案。

前面我們看到這個分割槽的檔案系統是fat32,為什麼是fat檔案系統呢?osdev中有這麼一段話:

這裡面的pe格式檔案就是我們看到的字尾為.efi檔案,上面這段話很好的解釋了需要fat32檔案系統的原因。

分割槽2從名字和分割槽型別guid中都可以看出為微軟保留分割槽,值得一提的是,該分割槽未在磁碟管理**現。使用windows自帶工具diskpart,發現當list volume時五個volume,此時看不到分割槽2,list partition時便可以看到分割槽2了,因此猜測,可能是微軟不將保留分割槽視為volume,所以在磁碟管理上才看不見的。

分割槽2的屬性同樣是不自動掛載,同理分割槽6屬性中63位也為1,表示不自動掛載,需要注意的是它的第0位也為1,表示為系統分割槽,磁碟分割槽工具必須將此分割槽保持原樣,不得做任何修改。

分割槽3、4、5皆為basic data partition分割槽,他們的檔案系統型別需要去分區內第乙個扇區中獲得。

到這裡就分析完了,感覺自己對檔案系統和uefi啟動還不是特別了解,因此後面有機會還是要去探索一番。

磁碟分割槽交換分割槽

磁碟分割槽 首先給虛擬機器增加乙個新的硬碟sdb fdisk dev sdb n 新建 p1 回車 2g 給新分的磁碟增加2g容量 w 儲存退出 格式化新建的sdb1磁碟 mkfs.xfs dev sdb1 掛載新增加的磁碟sdb1 mount dev sdb1 media cdrom media ...

主機規劃與磁碟分割槽 磁碟分割槽 MBR

主流的磁碟介面為sata介面。sata usb scsi等磁碟介面都是使用scsi模組來驅動的,因此這些介面的磁碟裝置檔名都是 dev sd a p 的格式。順序需要根據linux核心檢測到磁碟的順序來決定。比如pc上面有兩個sata磁碟以及乙個usb磁碟,而主機板上面有6個sata的插槽。這兩個s...

windows磁碟分割槽及刪除 擴充套件磁碟分割槽

1 開啟磁碟管理面板 1.在開始選單 搜尋框 搜尋 磁碟 或者硬碟 點選控制面板下的選項 建立並格式化硬碟分割槽 2.開啟控制面板 搜尋 磁碟 或者硬碟 點選 管理工具下的選項 建立並格式化硬碟分割槽 3.選中計算機圖示 右鍵 管理 雙擊 儲存下的選項 磁碟管理 2 磁碟分割槽步驟 1 選中要分割槽...