Solaris 10 安裝指南:Solaris Live Upgrade 與升級規劃

x86: 使用 GRUB 啟動 (規劃)

本節旨在說明使用 GRUB 啟動之基本原則和 GRUB 功能表。

安裝 Solaris 作業系統時,預設會在系統上安裝兩個 GRUB 功能表項目。第一個項目是 Solaris 作業系統項目。第二個項目是故障安全防護啟動歸檔,用在系統回復上。Solaris GRUB 功能表項目會做為 Solaris 軟體安裝與升級程序的一部分自動安裝與更新。這些項目由作業系統直接管理,無法手動進行編輯。

在標準 Solaris 作業系統安裝期間,會在 Solaris fdisk 分割區上安裝 GRUB,無須修改系統 BIOS 設定。如果作業系統不在 BIOS 啟動磁碟上,就必須執行下列動作之一:

比較好的方法是在啟動磁碟上安裝 Solaris 作業系統。如果一部機器上安裝了多個作業系統,您可以將項目增加到 menu.lst 檔案。這些項目會接著在您下次啟動系統時,顯示在 GRUB 功能表中。

如需有關多個作業系統的額外資訊,請參閱「System Administration Guide: Basic Administration」中的「How Multiple Operating Systems Are Supported in the GRUB Boot Environment」

x86: 使用 GRUB 從網路執行安裝

執行使用 GRUB 的網路啟動需要針對 PXE 用戶端配置的 DHCP 伺服器,以及提供 tftp 服務的安裝伺服器。DHCP 伺服器必須能夠回應 DHCP 類別 PXEClientGRUBClient。DHCP 回應必須包含下列資訊:


備註 –

伺服器端通常需要 rpc.bootparamd 來執行網路啟動,如果是使用 GRUB 的網路啟動則不需要。


如果沒有 PXE 或 DHCP 伺服器,您可以從 CD-ROM 或本機磁碟下載 GRUB。接著,您可以手動配置 GRUB 中的網路,並從檔案伺服器下載多重啟動程式和啟動歸檔。

如需更多資訊,請參閱「Solaris 10 安裝指南:網路安裝」中的「藉由 PXE 從網路啟動與安裝之簡介」

GRUB 主功能表的說明

啟動 x86 系統時,會顯示 GRUB 功能表。此功能表提供啟動項目清單,以從中進行選擇。啟動項目是系統上所安裝之作業系統實例。GRUB 功能表的基礎是 menu.lst 檔案,而此檔案是配置檔。menu.lst 檔案由 Solaris 安裝程式所建立,並可在安裝後進行修改。menu.lst 檔案指定 GRUB 功能表上所顯示的作業系統實例清單。


範例 5–1 GRUB 主功能表

在下列範例中,GRUB 主功能表會顯示 Solaris 和 Microsoft Windows 作業系統。也會列出名為 second_disk 的 Solaris Live Upgrade 啟動環境。請參閱以下對每個功能表項目的說明。


GNU GRUB version 0.95 (616K lower / 4127168K upper memory)
+-------------------------------------------------------------------+
|Solaris                                                            |
|Solaris failsafe                                                   |
|second_disk                                                        |
|second_disk failsafe                                               |
|Windows                                                            |
+-------------------------------------------------------------------+
Use the ^ and v keys to select which entry is highlighted. Press
enter to boot the selected OS, 'e' to edit the commands before
booting, or 'c' for a command-line.
Solaris

指定 Solaris 作業系統。

Solaris failsafe

指定 Solaris 作業系統損毀時用以回復的啟動歸檔。

second_disk

指定 Solaris Live Upgrade 的啟動環境。已建立 second_disk 啟動環境做為 Solaris 作業系統的副本。並使用 luactivate 指令升級與啟動。啟動環境可供啟動使用。

Windows

指定 Microsoft Windows 作業系統。GRUB 會偵測這些分割區,但不會驗證是否可啟動作業系統。


GRUB menu.lst 檔案的說明

GRUB menu.lst 檔案會列出 GRUB 主功能表的內容。GRUB 主功能表會列出系統上所安裝之所有作業系統實例的啟動項目,包括 Solaris Live Upgrade 啟動環境。Solaris 軟體升級程序會保留對此檔案所做的任何變更。

GRUB 主功能表會顯示對 menu.lst 檔案所做的任何修訂,還會顯示 Solaris Live Upgrade 項目。對此檔案所做的任何變更會在下次系統重新啟動時生效。下列原因時您可以修改此檔案:


注意 – 注意 –

請勿使用 GRUB menu.lst 檔案修改 Solaris Live Upgrade 項目。修改可能會造成 Solaris Live Upgrade 失敗。


雖然您可以使用 menu.lst 檔案自訂啟動運作方式,例如使用核心除錯程式啟動,但是比較好的自訂方法是使用 eeprom 指令。如果您使用 menu.lst 檔案進行自訂,Solaris 作業系統項目可能會在軟體升級期間修改。因此,對檔案所做的變更可能會遺失。

如需有關如何使用 eeprom 指令的資訊,請參閱「System Administration Guide: Basic Administration」中的「How to Set Solaris Boot Parameters by Using the eeprom Command」


範例 5–2 Menu.lst 檔案

以下是 menu.lst 檔案的範例:


default 0
timeout 10
title Solaris
  root (hd0,0,a)
  kernel /platform/i86pc/multiboot -B console=ttya
  module /platform/i86pc/boot_archive
title Solaris failsafe
  root (hd0,0,a)
  kernel /boot/multiboot -B console=ttya -s
  module /boot/x86.miniroot.safe
#----- second_disk - ADDED BY LIVE UPGRADE - DO NOT EDIT  -----
title second_disk
  root (hd0,1,a)
  kernel /platform/i86pc/multiboot
  module /platform/i86pc/boot_archive
title second_disk failsafe
  root (hd0,1,a)
  kernel /boot/multiboot kernel/unix -s
  module /boot/x86.miniroot-safe
#----- second_disk -------------- END LIVE UPGRADE ------------
title Windows
  root (hd0,0)
  chainloader -1
default

指定逾時過期時要啟動哪個項目。若要變更預設值,可以變更數字以指定清單中的另一項目。第一個標題的計數從零開始。例如,將預設值變更為 2,以自動啟動為 second_disk 啟動環境。

timeout

指定啟動預設項目之前等待使用者輸入的時間 (秒)。如果沒有指定逾時,就必須選擇一個項目。

title 作業系統名稱

指定作業系統名稱。

  • 如果是 Solaris Live Upgrade 啟動環境,作業系統名稱會是您在建立新的啟動環境時所指定的名稱。在前述範例中,Solaris Live Upgrade 啟動環境被命名為 second_disk

  • 如果是故障安全防護啟動歸檔,此啟動歸檔會在主作業系統損毀時用以進行回復。在前述範例中,Solaris 故障安全防護和 second_disk 故障安全防護是 Solaris 和 second_disk 作業系統的回復啟動歸檔。

root (hd0,0,a)

指定檔案要載入哪個磁碟、分割區和磁碟片段。GRUB 會自動偵測檔案系統類型。

kernel /platform/i86pc/multiboot

指定多重啟動程式。核心指令之後必須跟著多重啟動程式。多重啟動之後的字串會傳遞到 Solaris 作業系統,而不會進行解譯。

如需多重作業系統的完整說明,請參閱「System Administration Guide: Basic Administration」中的「How Multiple Operating Systems Are Supported in the GRUB Boot Environment」


尋找 menu.lst 檔案以變更 GRUB 功能表

必須一律使用 bootadm 指令來尋找 GRUB 功能表的 menu.lst 檔案。list-menu 子指令會尋找使用中的 GRUB 功能表。menu.lst 檔案會列出系統上所安裝之所有作業系統的清單。此檔案內容指定 GRUB 功能表上會顯示的作業系統清單。如果想要變更此檔案,請參閱x86: 尋找 GRUB 功能表的 menu.lst 檔案 (作業)