Boot
grub2 如何從 LVM 卷載入核心?
即使將 Grub2
/boot
放在 LVM 卷上,Grub2 也能夠載入核心。要使用此功能,需要insmod lvm
在相應的 grub 條目中添加(模組可以在 grub bios 分區上,而不是在 LVM 卷上)。但它並沒有向我解釋 grub 如何讀取核心,因為核心應該在任何東西插入之前載入。它是如何工作的?
GRUB2 中的
insmod
命令純粹與 GRUB 模組相關,與它正在載入的核心無關。當您這樣做時insmod lvm
,您正在載入一個 GRUB 模組以使其能夠讀取 LVM 卷。
前面已經提到,grub2 insmod 命令與核心無關,純粹是支持 grub 的模組。這可能是一個糟糕的關鍵字選擇,因為它可能會導致與核心模組混淆,但兩者無關。
grub2 如何在沒有核心的情況下訪問 LVM?LVM 具有定義的磁碟結構並包含元數據。任何可以讀取原始磁碟並知道如何解釋 LVM2 元數據以查找文件系統的東西都可以在不需要核心的情況下獲取文件。一旦 lvm grub2 模組用核心定位了文件系統,核心的載入方式與從普通文件系統中載入的方式相同——從原始磁碟複製到記憶體,解壓縮並執行。