Partition

GRUB 分區命名約定

  • September 3, 2018

在 Ubuntu 16.04 LTS 發行版的 GNU GRUB 資訊頁面中,分區的命名約定似乎很簡單,定義如下:

(hd0,msdos2)

  在這裡,“hd”表示它是一個硬碟驅動器。第一個整數'0’表示驅動器號,即第一個硬碟,字元串’msdos’表示分區方案,而第二個整數'2’表示分區號……

…這個表達式表示第一個硬碟驅動器的第二個分區。在這種情況下,GRUB 使用磁碟的一個分區,而不是整個磁碟。

這似乎表明第一個硬碟驅動器在第二個磁碟分區上有某種胖分區,稱為 msdos 分區方案。

繼續閱讀,還有另一個帶有以下文本的範例:

(hd1,msdos1,bsd1)

這意味著第二個硬碟的第一個 PC 片號上的 BSD ‘a’ 分區。

由於第一個定義指定第二個欄位是分區索引後跟分區索引(從1開始),並且13.1節提到了指定“子分區”的能力,那麼這個例子似乎表明bsd1分區是msdos1 分區的子分區。

文本表明它是“第一個 PC 片號”上的“BSD ‘a’ 分區”。我不熟悉“BSD ‘a’ 分區”、術語“第一個 PC 片編號”或子分區的概念,所以這使它有點混亂,因為我無法找到更多資訊。

什麼是子分區,它與邏輯分區和擴展分區有何不同?更具體地說:什麼是 BSD ‘a’ 分區和第一個 PC 片號?

關於 MSDOS 分區:

這似乎表明第一個硬碟驅動器在第二個磁碟分區上有某種胖分區,稱為 msdos 分區方案。

實際上,msdos2指示僅與分區方案有關;用於定義分區的格式。例如,另一種格式是 GPT。這與分區的內容沒有任何關係,例如使用的文件系統,例如 FAT。

關於切片:

什麼是子分區,它與邏輯分區和擴展分區有何不同?更具體地說:什麼是 BSD ‘a’ 分區和第一個 PC 片號?

這裡的混淆源於 BSD Unix 系統中的術語差異。有兩個級別的“分區”在起作用。

第一個是 MSDOS(或 GPT)分區。在這個級別,分區資訊儲存在位於磁碟開頭的結構中(在 GPT 的情況下,副本儲存在磁碟的末尾)。這是硬體理解的分區級別;BIOS 或 UEFI 韌體知道如何從這些分區引導作業系統(或引導管理器/載入程序)。

在這種情況下,第二個級別是 BSD disklabel。此分區資訊儲存在 MSDOS/GPT 分區中。此外,硬體(至少在 PC 的情況下)不理解也不使用這種級別的分區。由作業系統來處理它。BSD 系統能夠利用這種分區方案。

現在這是踢球者。在 BSD 系統的上下文中,MSDOS/GPT 分區稱為切片,由 BSD 磁碟標籤創建的子分區稱為分區。

您可能已經註意到 BSD 分區和 MSDOS 邏輯分區之間的相似之處。雖然它們在概念上相似,但頂級分區被細分,正如您所見,它們的實現方式不同。

引用自:https://unix.stackexchange.com/questions/466461