跳至內容跳至頁面導覽:上一頁 [access key p]/下一頁 [access key n]
documentation.suse.com / SUSE Linux Enterprise Server 文件 / 管理指南 / 將 Linux 系統開機 / 開機載入程式 GRUB 2
適用範圍 SUSE Linux Enterprise Server 15 SP3

14 開機載入程式 GRUB 2

本章介紹如何設定 SUSE® Linux Enterprise Server 中使用的開機載入程式 GRUB 2。GRUB 是傳統 GRUB 開機載入程式 (現在稱做GRUB Legacy) 的後繼產品。從 SUSE® Linux Enterprise Server 12 版本開始,就已使用 GRUB 2 做為預設的開機載入程式。產品中提供了一個 YaST 模組來進行最重要的設定。整個開機程序簡述於第 12 章 「開機過程簡介。如需關於 UEFI 機器安全開機支援的詳細資料,請參閱第 13 章 「UEFI (整合可延伸韌體介面)

14.1 GRUB Legacy 與 GRUB 2 之間的主要差異

  • 組態儲存在不同的檔案中。

  • 支援更多的檔案系統 (例如 Btrfs)。

  • 可以直接讀取 LVM 或 RAID 裝置上儲存的檔案。

  • 使用者介面可翻譯,並可以改變主題。

  • 包含一套用於載入模組的機制,以支援諸如檔案系統等的其他功能。

  • 自動搜尋及產生其他核心與作業系統 (例如 Windows) 的開機項目。

  • 包含一個類似於 Bash 的精簡主控台。

14.2 組態檔案結構

GRUB 2 的組態以下列檔案為基礎:

/boot/grub2/grub.cfg

此檔案包含 GRUB 2 功能表項目的組態。它取代了 GRUB Legacy 中的 menu.lst。不要編輯 grub.cfg — 它是由指令 grub2-mkconfig -o /boot/grub2/grub.cfg 自動產生的。

/boot/grub2/custom.cfg

這個可選用檔案在開機時由 grub.cfg 直接獲取,可用於將自訂項目新增至開機功能表。從 SUSE Linux Enterprise Server 12 SP2 開始,使用 grub-once 時也將剖析這些項目。

/etc/default/grub

此檔案控制 GRUB 2 的使用者設定,通常包含背景和主題等其他環境設定。

/etc/grub.d/ 下的程序檔

在執行 grub2-mkconfig -o /boot/grub2/grub.cfg 指令期間,系統會讀取此目錄中的程序檔。主要組態檔案 /boot/grub/grub.cfg 中整合了這些程序檔的指示。

/etc/sysconfig/bootloader

此組態檔案儲存一些基本設定,例如開機載入程式類型,以及是否要啟用 UEFI 安全開機支援。

/boot/grub2/x86_64-efi/boot/grub2/power-ieee1275/boot/grub2/s390x

這些組態檔案包含特定於架構的選項。

GRUB 2 可以透過多種方式控制。現有組態啟動項目,可以從圖形功能表選取 (開頭顯示畫面)。組態從基於其他組態檔案編譯的檔案 /boot/grub2/grub.cfg 載入 (參閱下文)。所有 GRUB 2 組態檔案都視為系統檔案,編輯這些組態檔案需要有 root 權限。

注意
注意:啟用組態變更

手動編輯 GRUB 2 組態檔案後,您需要執行 grub2-mkconfig -o /boot/grub2/grub.cfg 才能啟用變更。但使用 YaST 變更組態時就不需要如此,因為 YaST 會自動執行 此指令。

14.2.1 /boot/grub2/grub.cfg 檔案

帶有開機功能表的圖形開頭顯示畫面以 GRUB 2 組態檔案 /boot/grub2/grub.cfg 為基礎,它包含關於可以透過功能表開機之所有分割區或作業系統的資訊。

系統每次開機時,GRUB 2 會直接從檔案系統載入功能表檔案。因此,在變更組態檔案後不需要重新安裝 GRUB 2。安裝或移除核心後,系統會自動重建 grub.cfg

grub.cfg 是執行 grub2-mkconfig -o /boot/grub2/grub.cfg 指令時,從檔案 /etc/default/grub/etc/grub.d/ 目錄中的程序檔編譯的。因此,切勿手動編輯該檔案,而應該編輯相關的來源檔案,或者依照第 14.3 節 「使用 YaST 設定開機載入程式」中所述,使用 YaST 的開機載入程式模組來修改組態。

14.2.2 /etc/default/grub 檔案

此檔案包含 GRUB 2 的更多一般選項,例如,顯示功能表的時間,或者要開機的預設作業系統。若要列出所有可用選項,請查看以下指令的輸出:

tux > grep "export GRUB_DEFAULT" -A50 /usr/sbin/grub2-mkconfig | grep GRUB_

除了已定義的變數外,使用者還可以引入自己的變數,日後在 /etc/grub.d 目錄下的程序檔內使用。

編輯 /etc/default/grub 後,請使用 grub2-mkconfig -o /boot/grub2/grub.cfg 更新主要組態檔案。

注意
注意:範圍

此檔案中設定的所有選項都是會影響所有開機項目的一般選項。透過 GRUB_*_XEN_* 組態選項可以設定 Xen 核心或 Xen 監管程式的特定選項。如需詳細資訊,請參閱下文。

GRUB_DEFAULT

設定預設會啟動的開機功能表項目。它的值可以是數值、功能表項目的完整名稱,或者saved

GRUB_DEFAULT=2 會啟動第三個 (從零開始計數) 開機功能表項目。

GRUB_DEFAULT="2>0" 會啟動第三個頂層功能表項目的第一個子功能表項目。

GRUB_DEFAULT="Example boot menu entry" 會啟動名為Example boot menu entry的功能表項目。

GRUB_DEFAULT=saved 會將 grub2-oncegrub2-set-default 指令指定的項目開機。grub2-reboot 只設定下一次重新開機的預設開機項目,而 grub2-set-default 設定發生變更之前的預設開機項目。grub2-editenv list 列出下一個開機項目。

GRUB_HIDDEN_TIMEOUT

等待使用者按某個鍵的指定秒數。在此期間,除非使用者按下某個鍵,否則不顯示功能表。如果使用者在指定的時間內未按任何鍵,控制權將移交給 GRUB_TIMEOUTGRUB_HIDDEN_TIMEOUT=0 首先會檢查是否按下了 Shift,如果是,則顯示開機功能表,否則會立即啟動預設的功能表項目。如果 GRUB 2 只識別了一個可開機作業系統,則預設行為就是如此。

GRUB_HIDDEN_TIMEOUT_QUIET

如果指定 false,那麼當啟動了 GRUB_HIDDEN_TIMEOUT 功能時,系統會在一個空白螢幕上顯示倒數計時器。

GRUB_TIMEOUT

在自動啟動預設開機項目之前,開機功能表顯示的時間期限,以秒為單位。如果按下某個鍵,則會取消逾時,GRUB 2 將等待您手動完成選擇。如果指定 GRUB_TIMEOUT=-1,則在您手動選取開機項目之前,功能表會一直顯示。

GRUB_CMDLINE_LINUX

此行中的項目將新增到正常和復原模式之開機項目的末尾。使用它可以將核心參數新增至開機項目。

GRUB_CMDLINE_LINUX_DEFAULT

GRUB_CMDLINE_LINUX 一樣,但只能在正常模式下附加項目。

GRUB_CMDLINE_LINUX_RECOVERY

GRUB_CMDLINE_LINUX 一樣,但只能在復原模式下附加項目。

GRUB_CMDLINE_LINUX_XEN_REPLACE

此項目將徹底取代所有 Xen 開機項目的 GRUB_CMDLINE_LINUX 參數。

GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT

GRUB_CMDLINE_LINUX_XEN_REPLACE 一樣,但它只會取代 GRUB_CMDLINE_LINUX_DEFAULT 的參數。

GRUB_CMDLINE_XEN

此項目只為 Xen 客體核心指定核心參數 — 工作原理與 GRUB_CMDLINE_LINUX 相同。

GRUB_CMDLINE_XEN_DEFAULT

GRUB_CMDLINE_XEN 一樣 — 工作原理與 GRUB_CMDLINE_LINUX_DEFAULT 相同。

GRUB_TERMINAL

啟用並指定輸入/輸出終端機裝置。可以是 console (PC BIOS 和 EFI 主控台)、serial (序列終端機)、ofconsole (開放韌體主控台) 或預設值 gfxterm (圖形模式輸出)。用引號括住所需的多個選項可以啟用多個裝置,例如 GRUB_TERMINAL="console serial"

GRUB_GFXMODE

gfxterm 圖形終端機使用的解析度。請注意,您只能使用您的圖形卡 (VBE) 支援的模式。預設值為「auto」,即嘗試選取偏好的解析度。在 GRUB 2 指令行中輸入 videoinfo 可顯示 GRUB 2 可使用的螢幕解析度。當 GRUB 2 開機功能表螢幕顯示時,輸入 c 可存取指令行。

您還可以在解析度設定後面附加一個值來指定色彩深度,例如 GRUB_GFXMODE=1280x1024x24

GRUB_BACKGROUND

設定 gfxterm 圖形終端機的背景影像。該影像必須是 GRUB 2 在開機時可讀的檔案,並且必須以 .png.tga.jpg.jpeg 字尾結尾。必要時,系統會縮放該影像以適合螢幕大小。

GRUB_DISABLE_OS_PROBER

如果將此選項設定為 true,將會停用自動搜尋其他作業系統的功能。系統只會偵測 /boot/ 中的核心影像,以及 /etc/grub.d/ 中您自己的程序檔內的選項。

SUSE_BTRFS_SNAPSHOT_BOOTING

如果將此選項設定為 true,GRUB 2 可直接開機至 Snapper 快照。如需詳細資訊,請參閱 第 7.3 節 「透過從快照開機來執行系統復原」

如需選項的完整清單,請參閱 GNU GRUB 手冊

14.2.3 /etc/grub.d 中的程序檔

在執行 grub2-mkconfig -o /boot/grub2/grub.cfg 指令期間,系統會讀取此目錄中的程序檔。程序檔中的指令會整合到 /boot/grub2/grub.cfg 中。grub.cfg 中功能表項目的順序由此目錄中檔案的執行順序來決定。具有前置編號的檔案先執行,從最小的編號開始。00_header10_linux 之前執行,而後者又在 40_custom 之前執行。如果存在採用字母名稱的檔案,這些檔案將在採用編號命名的檔案之後執行。在執行 grub2-mkconfig 期間,只有可執行檔才能在 grub.cfg 中產生輸出。依預設,/etc/grub.d 目錄中的所有檔案都是可執行檔。

提示
提示:將自訂內容永久儲存在 grub.cfg

由於每次執行 grub2-mkconfig 時都會重新編譯 /boot/grub2/grub.cfg,因此所有自訂內容都會遺失。如果要將您的行直接插入到 /boot/grub2/grub.cfg 中,並且希望在執行 grub2-mkconfig 之後它們不會遺失,請將這些行插入到下面兩行之間

### BEGIN /etc/grub.d/90_persistent ###

### END /etc/grub.d/90_persistent ###

90_persistent 程序檔可確保此類內容會保留下來。

下面列出了最重要的程序檔:

00_header

設定環境變數,例如系統檔案位置、顯示設定、主題和以前儲存的項目。它還可以輸入 /etc/default/grub 中儲存的優先設定。通常,您不需要變更此檔案。

10_linux

識別根裝置上的 Linux 核心,並建立相關的功能表項目,其中包括關聯的復原模式選項 (如果已啟用)。主功能表頁面中只顯示最新核心,其他核心包含在子功能表中。

30_os-prober

此程序檔使用 os-prober 來搜尋 Linux 和其他作業系統,並將結果列於 GRUB 2 功能表中。其中有些區段用於識別其他特定作業系統,例如 Windows 或 macOS。

40_custom

使用此檔案可以方便地在 grub.cfg 中包含自訂開機項目。切勿變更開頭的 exec tail -n +3 $0 部分。

處理順序依據前置編號確定,編號最小的程序檔最先執行。如果多個程序檔的前置編號相同,則按整個名稱的字母順序來決定執行順序。

提示
提示:/boot/grub2/custom.cfg

如果您建立了 /boot/grub2/custom.cfg 並在其中填入了內容,則開機時系統會自動將其包含到 /boot/grub40/grub.cfg 中緊接在 40_custom 後面的位置。

14.2.4 BIOS 磁碟機與 Linux 裝置之間的映射

在 GRUB Legacy 中,device.map 組態檔案用於依據 BIOS 磁碟機代號衍生 Linux 裝置名稱。不一定總能猜對 BIOS 磁碟機與 Linux 裝置之間的映射。例如,如果在 BIOS 組態中交換了 IDE 和 SCSI 驅動器的開機順序,那麼 GRUB Legacy 就會使用錯誤的順序。

GRUB 2 在產生 grub.cfg 時使用裝置 ID 字串 (UUID) 或檔案系統標籤,因此避免了此問題。GRUB 2 公用程式會即時建立一個暫存裝置對應,這通常足以滿足需要,在單磁碟系統中更是如此。

但是,如果您需要覆寫 GRUB 2 的自動裝置對應機制,請建立自訂對應檔案 /boot/grub2/device.map。下面的範例將變更映射,使 DISK 3 成為開機磁碟。請注意,GRUB 2 分割區編號以 1 開始,而不是像 GRUB Legacy 中那樣以 0 開始。

(hd1)  /dev/disk-by-id/DISK3 ID
(hd2)  /dev/disk-by-id/DISK1 ID
(hd3)  /dev/disk-by-id/DISK2 ID

14.2.5 在開機程序期間編輯功能表項目

當系統由於組態錯誤而不再能夠開機時,如果能夠直接編輯功能表項目,就會很有幫助。使用功能表編輯器還可以在不變更系統組態的情況下測試新設定。

  1. 在圖形開機功能表中,使用方向鍵選取要編輯的項目。

  2. E 開啟文字型編輯器。

  3. 使用方向鍵移到您要編輯的行。

    GRUB 2 開機編輯器
    圖 14.1︰ GRUB 2 開機編輯器

    現在,您可以採取以下兩種做法:

    1. 將用空格分隔的參數新增到以 linuxlinuxefi 開頭的行的末尾,以編輯核心參數。https://en.opensuse.org/Linuxrc 上提供了完整的參數清單。

    2. 或者編輯一般選項,以變更核心版本等。按 →| 鍵會顯示所有可能的補齊建議。

  4. F10 使用您所做的變更啟動系統,或者按 Esc 放棄編輯,並返回 GRUB 2 功能表。

透過這種方式進行的變更只會套用到目前的開機過程,而不會永久儲存。

重要
重要:開機程序期間的鍵盤配置

US 鍵盤配置是啟動時唯一可以使用的鍵盤配置。請參閱圖形 12.1 「美式鍵盤配置」

注意
注意:安裝媒體中的開機載入程式

在使用傳統 BIOS 的系統上,安裝媒體的開機載入程式仍是 GRUB Legacy。若要新增開機參數,請選取一項,然後開始輸入。在安裝開機項目中新增的內容將永久儲存在安裝的系統中。

注意
注意:在 IBM Z 上編輯 GRUB 2 功能表項目

IBM Z 上的游標移動操作和編輯指令有所不同,如需詳細資料,請參閱第 14.4 節 「IBM Z 上終端機使用方式的差異」

14.2.6 設定開機密碼

即使在作業系統開機之前,GRUB 2 也支援對檔案系統的存取。沒有 root 權限的使用者可以存取 Linux 系統中的檔案,而在系統開機後,他們將無權存取這些檔案。若要阻擋此類型的存取,或防止使用者啟動特定的功能表項目,請設定開機密碼。

重要
重要:開機需要密碼

如果設定了開機密碼,則每次開機時都需要輸入該密碼,這意味著系統不會自動開機。

按如下步驟設定開機密碼。或者使用 YaST (使用密碼保護開機載入程式 )。

  1. 使用 grub2-mkpasswd-pbkdf2 來加密密碼:

    tux > sudo grub2-mkpasswd-pbkdf2
    Password: ****
    Reenter password: ****
    PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.9CA4611006FE96BC77A...
  2. 將產生的字串連同 set superusers 指令一起貼到檔案 /etc/grub.d/40_custom 中。

    set superusers="root"
    password_pbkdf2 root grub.pbkdf2.sha512.10000.9CA4611006FE96BC77A...
  3. 若要將變更輸入主要組態檔案中,請執行:

    tux > sudo grub2-mkconfig -o /boot/grub2/grub.cfg

在重新開機後,當您嘗試啟動某個功能表項目時,系統會提示您輸入使用者名稱和密碼。輸入 root 以及您在執行 grub2-mkpasswd-pbkdf2 指令期間輸入的密碼。如果身分證明正確,系統將啟動選定的開機項目。

如需詳細資訊,請參閱 https://www.gnu.org/software/grub/manual/grub.html#Security

14.3 使用 YaST 設定開機載入程式

SUSE Linux Enterprise Server 系統中,設定開機載入程式一般選項最簡單的方法是使用 YaST 模組。在 YaST 控制中心內,選取「系統 ›  開機載入程式」。模組會顯示系統目前的開機載入程式組態,並允許您進行變更。

使用「開機碼選項」索引標籤可以檢視和變更關於類型、位置和進階載入程式設定的設定。您可以選擇要在標準模式還是 EFI 模式下使用 GRUB 2。

開機代碼選項
圖 14.2︰ 開機代碼選項
重要
重要:EFI 系統要求使用 GRUB2-EFI

如果您使用的是 EFI 系統,則只能安裝 GRUB2-EFI,否則您的系統不再能夠開機。

重要
重要:重新安裝開機載入程式

若要重新安裝開機載入程式,請確定變更 YaST 中的一個設定,然後將其復原。例如,若要重新安裝 GRUB2-EFI,請先選取 GRUB2,然後立即重新切換至 GRUB2-EFI

否則,開機載入程式可能只會部分重新安裝。

注意
注意:自訂開機載入程式

若要使用此處未列出的開機載入程式,請選取「請勿安裝任何開機載入程式」。請先詳細閱讀開機載入程式的說明文件,再選取這個選項。

14.3.1 開機載入程式位置和開機代碼選項

開機載入程式的預設位置為主開機記錄 (MBR) 或 / 分割區的開機磁區,具體取決於分割區設定。若要修改開機載入程式的位置,請執行下列步驟:

程序 14.1︰ 變更開機載入程式位置
  1. 選取「開機碼選項」索引標籤,然後為「開機載入程式位置」選擇以下其中一個選項:

    從主開機記錄開機

    選取此選項將在包含 /boot 目錄的磁碟 MBR 中安裝開機載入程式。通常,這將是掛接到 / 的磁碟,但如果 /boot 掛接到其他磁碟上的獨立分割區中,則將會使用該磁碟的 MBR。

    從根分割區開機

    這會在 / 分割區的開機磁區中安裝開機載入程式。

    自訂根分割區

    這個選項可讓您手動指定開機載入程式的位置。

  2. 按一下「確定」以套用變更。

代碼選項
圖 14.3︰ 代碼選項

開機碼選項索引標籤包含以下其他選項:

在分割區表中為開機分割區設定使用中旗標

啟用包含 /boot 目錄的分割區。對於 POWER 系統,則會啟用 PReP 分割區。此選項用於具有舊 BIOS 的系統和/或舊式作業系統,因為它們可能無法從非使用中的分割區開機。您可以放心地啟用此選項。

將一般開機碼寫入 MBR

如果 MBR 包含自訂的「非 GRUB」代碼,此選項會以不受作業系統限制的泛型代碼取代該代碼。如果您停用此選項,系統可能變得無法開機。

啟用受信任的開機支援

啟動可支援受信任運算功能的 TrustedGRUB2(受信任的平台摸組 (Trusted Platform Module, TPM))。如需詳細資訊,請參閱 https://github.com/Sirrix-AG/TrustedGRUB2

保護性 MBR 旗標區段包含以下選項:

set

適用於傳統舊版 BIOS 開機。

remove

適用於 UEFI 開機。

do not change

如果您已有一個正常運作的系統,這通常是最適合的選項。

大多數情況下,YaST 預設會使用適合的選項。

14.3.2 調整磁碟順序

如果您的電腦有多個硬碟,您可以指定磁碟的開機順序。如果從 MBR 開機,將在清單中的第一個磁碟中安裝 GRUB 2。預設在該磁碟中安裝 SUSE Linux Enterprise Server。清單的其餘部分是有關 GRUB 2 的裝置對應程式的提示 (請參閱第 14.2.4 節 「BIOS 磁碟機與 Linux 裝置之間的映射」)。

警告
警告:無法開機的系統

通常情況下,預設值幾乎對所有部署都有效。如果您錯誤地變更了磁碟的開機順序,系統下次重新開機時可能無法開機。例如,如果清單中的第一個磁碟不在 BIOS 開機序列中,並且清單中的其他磁碟有空白 MBR,系統將無法開機。

程序 14.2︰ 設定磁碟順序
  1. 開啟「開機碼選項」索引標籤。

  2. 按一下編輯磁碟開機順序

  3. 如果列出超過一個磁碟,請選擇一個磁碟,然後按一下「向上」或「向下」重新排列顯示磁碟的順序。

  4. 按兩次「確定」儲存變更。

14.3.3 設定進階選項

可以透過開機載入程式選項索引標籤來設定進階開機參數。

14.3.3.1 開機載入程式選項索引標籤

開機載入程式選項
圖 14.4︰ 開機載入程式選項
開機載入程式逾時

輸入新值或者用滑鼠按住相應的方向鍵,以變更「逾時秒數」的值。

偵測外來作業系統

如果選取該選項,開機載入程式將會搜尋其他系統 (例如 Windows) 或其他 Linux 安裝。

開機時隱藏功能表

隱藏開機功能表並使用預設項目開機。

調整預設開機項目

從「預設開機區段」清單中選取所需項目。請注意,開機項目名稱中的>符號用於分隔開機區段及其子區段。

使用密碼保護開機載入程式

使用一個附加的密碼保護開機載入程式和系統。如需手動設定的詳細資料,請參閱第 14.2.6 節 「設定開機密碼」。如果啟用此選項,則每次開機時都需要輸入該密碼,這意味著系統不會自動開機。但是,如果您更偏好 GRUB 1 的行為方式,請額外啟用僅啟用項目修改防護。使用此設定時,任何人都可以選取開機項目並將系統開機,僅在修改開機項目時,才需要提供 GRUB 2 root 使用者的密碼。

14.3.3.2 核心參數索引標籤

核心參數
圖 14.5︰ 核心參數
選擇性核心指令行參數

在這裡指定選擇性的核心參數,以啟用/停用系統功能、新增驅動程式,等等。

CPU 緩和措施

SUSE 針對為防禦 CPU 旁路攻擊而部署的所有軟體緩和措施發行了一或多個核心開機指令行參數。其中一些參數可能會導致效能損失。請依據您的設定選擇以下其中一個選項,以在安全性和效能之間取得平衡:

自動 啟用您的 CPU 型號所需的全部緩和措施,但不能防禦跨 CPU 線串的攻擊。此設定可能會在一定程度上影響效能,具體視您的工作負載而定。

自動 + 停用 SMT 提供整套可用的安全性緩和措施。啟用您的 CPU 型號所需的全部緩和措施。此外,它還會停用同步多重線串,以避免遭到跨多個 CPU 線串發起的旁路攻擊。此設定可能會進一步影響效能,具體視您的工作負載而定。

關閉 停用所有緩和措施。CPU 可能會遭到旁路攻擊,具體視 CPU 型號而定。此設定不會對效能造成任何影響。

手動 不設定任何緩和措施層級。請使用核心指令行選項手動指定 CPU 緩和措施。

使用圖形主控台

如果核取該選項,則開機功能表會顯示在圖形開頭顯示畫面中,而不是以文字模式顯示。依預設,系統會自動設定開機螢幕的解析度,但您可以透過主控台解析度手動進行設定。可以使用主控台主題檔案選擇器指定圖形主題定義檔案。請僅在您想要套用自己的自訂主題時,才變更此設定。

使用序列控制台

如果您的機器是透過序列控制台控制的,請啟用此選項並指定以何速度來使用哪一個 COM 埠。請參閱 info grubhttp://www.gnu.org/software/grub/manual/grub.html#Serial-terminal

14.4 IBM Z 上終端機使用方式的差異

在 3215 和 3270 終端機上,游標的移動方式以及在 GRUB 2 中發出編輯指令的方式存在一些差異和限制。

14.4.1 限制

互動

互動性存在嚴重的限制。輸入時通常不能獲得直觀的回饋。若要查看游標所在的位置,請輸入底線 (_)。

注意
注意:3270 與 3215 的對比

與 3215 終端機相比,3270 終端機在顯示和重新整理螢幕方面要好得多。

游標移動方式

無法進行傳統的游標移動操作。AltMetaCtrl 和游標鍵不起作用。若要移動游標,請使用第 14.4.2 節 「按鍵組合」中列出的按鍵組合。

插入記號

插入記號 (^) 用做控制字元。若要輸入文字 ^ 後再輸入一個字母,請依序輸入 ^^字母

輸入

將無法使用 Enter 鍵,請改用 ^J

14.4.2 按鍵組合

常用的替代按鍵:

^J

確認 (Enter)

^L

中止,返回前一狀態

^I

Tab 鍵補齊 (在編輯模式與外圍程序模式下)

功能表模式下可用的按鍵:

^一個

到第一個項目

^E

到最後一個項目

^P

到上一個項目

^N

到下一個項目

^G

向上一頁

^C

向下一頁

^F

將選定的項目開機或進入子功能表 (與 ^J 的作用相同)

E

編輯選定的項目

C

進入 GRUB-Shell

編輯模式下可用的按鍵:

^P

向上移動一行

^N

向下移動一行

^B

向左移動一格

^F

向右移動一格

^一個

到行首

^E

到行尾

^H

退格

^D

刪除

^K

刪除到行尾

^Y

恢復刪除

^O

插入新行

^L

重新整理螢幕

^X

開機項目

^C

進入 GRUB-Shell

指令行模式下可用的按鍵:

^P

上一個指令

^N

歷程中的下一個指令

^一個

到行首

^E

到行尾

^B

向左移動一格

^F

向右移動一格

^H

退格

^D

刪除

^K

刪除到行尾

^U

刪除行

^Y

恢復刪除

14.5 實用的 GRUB 2 指令

grub2-mkconfig

依據 /etc/default/grub 以及 /etc/grub.d/ 中的程序檔產生新的 /boot/grub2/grub.cfg

範例 14.1︰ grub2-mkconfig 用法
grub2-mkconfig -o /boot/grub2/grub.cfg
提示
提示:語法檢查

執行不帶任何參數的 grub2-mkconfig 會將組態列印至 STDOUT 以供使用者檢查。在寫入 /boot/grub2/grub.cfg 後使用 grub2-script-check 可以檢查其語法。

重要
重要:grub2-mkconfig 無法修復 UEFI 安全開機表

如果您使用的是 UEFI 安全開機,而您的系統無法再正常連接 GRUB 2,則您可能需要另外重新安裝 Shim 並重新產生 UEFI 開機表。為此請使用:

root # shim-install --config-file=/boot/grub2/grub.cfg
grub2-mkrescue

為安裝的 GRUB 2 組態建立一個可開機的救援影像。

範例 14.2︰ grub2-mkrescue 用法
grub2-mkrescue -o save_path/name.iso iso
grub2-script-check

檢查指定檔案中有無語法錯誤。

範例 14.3︰ grub2-script-check 用法
grub2-script-check /boot/grub2/grub.cfg
grub2-once

僅設定下次開機的預設開機項目。若要取得可用開機項目的清單,請使用 --list 選項。

範例 14.4︰ grub2-once 用法
grub2-once number_of_the_boot_entry
提示
提示:grub2-once 說明

不使用任何選項呼叫該程式可以取得所有可能選項的完整清單。

14.6 更多資訊

如需關於 GRUB 2 更進一步的資訊,請參閱 https://www.gnu.org/software/grub/。另請參閱 grub info 頁面。您也可以在「技術資訊搜尋」中搜尋關鍵字GRUB 2,取得關於特殊問題的資訊,網址是 https://www.suse.com/support