Show Table of Contents
E.2. GRUB
GNU GRand Unified Boot loader (GRUB)是一個能夠在系統開機時選擇安裝系統或載入核心的程式。同時也讓使用者能將參數傳遞給核心。
E.2.1. 基於 BIOS 的 x86 系統上的 GRUB 與開機程序
本段落將討論 GRUB 在啟動一部基於 BIOS 的 x86系統時的特殊功用。欲取得完整開機程序上的相關資訊,請參閱<節 F.2, “開機過程的詳細資訊”>。
GRUB 依下列階段步驟將本身載入記憶體中:
- 第 1 階段或是主開機載入程式會藉由 MBR [16]被 BIOS 寫入記憶體中主開機載入程式只使用了 MBR 中 512 byte 的磁碟空間,並且能夠載入開機載入程式的階段 1.5 或階段 2。BIOS 無法讀取分割表或檔案系統。它會初始化硬體,讀取 MBR,然後完全地根據開機載入程序的第一階段,來繼續進行開機程序。
- 如果有必要,1.5 階段開機管理程式會由 1 階段開機管理程式寫入記憶體中 某些硬體會需要經過緩衝階段到第 2 階段開機管理程式。尤其是當硬碟
/boot/分割區大於 1024 磁柱,或當使用 LBA 模式時。您可以在/boot/分割區或者一小部分於 MBR 與一小部份於/boot/分割區。 - 第 2 階段或次開機管理程式寫入記憶體 次開機管理程式顯示在 GRUB 目錄與指令環境。這個介面允許使用者選擇要啟動哪個核心或作業系統,將參數傳至核心,或檢查系統參數。
- 次開機管理程式會將作業系統或核心以及
/boot/sysroot/的內容寫入記憶體。在 GRUB 決定要啟始哪個作業程式或核心後,它會載入並將電腦控制權轉移給作業系統。
用來啟動 Linux 的方式稱為直接載入(direct loading),因為開機載入程式可以直接啟動作業系統。開機載入程式與 kernel 之間並沒有緩衝階段。
其它作業系統的開機程序也許會不同。例如 Microsoft Windows 作業系統以及其它的作業系統使用 連鎖載入 的開機模式。在這種方式下,MBR 指出搭載作業系統分割區的第一扇區,在這個扇區存有啟動作業系統所需的檔案。
GRUB 支援直接以及連鎖載入兩種開機模式,並讓它啟動絕大部分的作業系統。
警告
在安裝過程中,微軟 DOS 與微軟視窗安裝程式會完全覆蓋 MBR,並刪除所有既有的開機管理程式。如果您要建立雙開機系統,建議您先安裝微軟作業系統。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.