跳过导航链接 | |
退出打印视图 | |
引导和关闭 Oracle Solaris 11.1 系统 Oracle Solaris 11.1 Information Library (简体中文) |
本节介绍 SPARC 和 x86 平台上的基本引导过程。有关特定硬件类型(包括具有服务处理器的系统和具有多个物理域的系统)的引导过程的更多信息,请参见特定硬件的产品文档,网址为 http://www.oracle.com/technetwork/indexes/documentation/index.html。
装入和执行独立程序的过程称为引导。通常,独立的程序是操作系统内核。但是,任何独立程序可代替内核进行引导。
在 SPARC 平台上,引导过程由以下基本阶段组成:
打开系统后,系统固件 (PROM) 会执行开机自检 (power-on self-test, POST)。
自检成功完成后,如果已在由计算机固件使用的非易失性存储区域中设置了相应的标志,则固件将尝试进行自动引导。
从磁盘引导时,二级程序是特定于文件系统的引导块;通过网络引导或使用自动化安装程序 (Automated Installer, AI) 引导时,二级程序是 inetboot 或 wanboot。
在基于 x86 的系统上,引导过程包含两个概念截然不同的阶段,即内核装入和内核初始化。内核装入是使用系统板上的固件以及外围板上 ROM 中的固件扩展通过 GRUB 实现的。系统固件装入 GRUB。装入机制有所不同,具体取决于系统板上附带的系统固件的类型。
打开与 PC 兼容的系统后,系统的固件将执行开机自检 (power-on self test, POST),从外围板 ROM 查找并安装固件扩展,并通过某种特定于固件的机制开始引导过程。
对于具有 BIOS 固件的系统,会将硬盘的第一个物理扇区(称为引导扇区)装入内存中并执行其代码。根据 GUID 分区表 (GUID Partition Table, GPT) 进行分区的磁盘必须具有行为不同的引导扇区代码,从另一位置装入代码,因为 GPT 方案不会保留每个分区的第一个扇区来存储引导扇区代码。如果 GRUB 在 BIOS 固件上运行,则该另一位置是称为 BIOS 引导分区的一个专用分区。在 GRUB 的引导扇区代码将 GRUB 的剩余部分装入内存后,引导过程将继续进行。
然后,该引导程序会装入下一阶段引导程序(在 Oracle Solaris 上,下一阶段引导程序就是 GRUB 本身)。在带有 BIOS 固件的系统上,从网络进行引导涉及不同的过程。请参见第 5 章。
对于具有基于 UEFI 的固件的系统,引导过程大不相同。UEFI 固件会在它所枚举的磁盘上搜索 EFI 系统分区 (EFI System Partition, ESP),并根据 UEFI 规范定义的过程装入和执行 UEFI 引导程序,结果是将 UEFI 引导应用程序装入内存并执行此应用程序。在 Oracle Solaris 中,该 UEFI 引导程序是 GRUB。此发行版中的 GRUB 版本被构建作为 UEFI 引导应用程序运行。然后,引导过程大致上像在具有 BIOS 固件的系统上那样继续进行。
有关特定硬件类型(包括具有服务处理器的系统和具有多个物理域的系统)的引导过程的更多信息,请参见特定硬件的产品文档,网址为 http://www.oracle.com/technetwork/indexes/documentation/index.html。
GRUB 2 能够引导带有 BIOS 和 UEFI 这两种固件以及具有带有 GPT 标签的磁盘的系统。为了支持在 UEFI 固件和 BIOS 固件上引导,GRUB 2 在构建时以两种不同的平台为目标:i386-pc (BIOS) 和 x86_64-efi(64 位 UEFI 2.1+),因此可作为两个独立的二进制文件集提供。
当引导基于 x86 的系统时,请注意以下针对 UEFI 和针对 BIOS 的系统的不同之处:
命令差异-BIOS 引导方法使用的某些命令在 UEFI 固件上不可用。同样,某些 UEFI 命令在支持 BIOS 引导方法的系统上不可用。
PXE 网络引导差异-对 DHCP 服务器配置进行了更改,以支持从网络引导带有 UEFI 固件的系统。这些更改包括支持新的 UEFI 客户机体系结构标识符值(DHCP 选项 93)。
注 - 可配置为通过使用 UEFI 固件或 BIOS 引导方法进行引导的系统在技术上将与 Oracle Solaris 结合使用。在安装(或映像更新)时,首先根据系统固件类型安装 GRUB。尽管可以运行明确的命令来将 GRUB 安装到另一个固件类型要求的引导位置,但不支持该方法。具有某个特定固件类型的系统不应在已安装 Oracle Solaris 后重新配置为使用备用固件类型进行引导。
向 zpool create 命令添加了一个新的 -B 选项。将整个磁盘传递给 zpool create 创建命令时,-B 选项会导致 zpool 命令将指定的设备分为两个分区:第一个分区是特定于固件的引导分区,第二个分区则是 ZFS 数据分区。将整个磁盘 vdev 添加或附加到现有 rpool 时,此选项也可用于创建需要的引导分区(如有必要)。允许 bootfs 属性的条件也进行了修改。如果池满足了所有系统和磁盘标签要求,则允许设置 bootfs 属性以标识该池上的可引导数据集。作为标签要求的一部分,需要的引导分区必须也存在。有关更多信息,请参见《Oracle Solaris 11.1 管理:ZFS 文件系统》中的"管理 ZFS 根池"。