跳过导航链接 | |
退出打印视图 | |
引导和关闭 Oracle Solaris 11.1 系统 Oracle Solaris 11.1 Information Library (简体中文) |
支持使用 zpool create 命令基于固件类型创建引导分区
x86: 创建支持带有 UEFI 和 BIOS 固件的系统的引导分区
Oracle Solaris 引导体系结构具有以下基本特征:
使用引导归档文件。
引导归档文件包含一个使用内存磁盘挂载的文件系统映像。该映像是自描述的,特别是在引导块(对于 x86 平台则是 GRUB 引导装载程序)中包含了一个文件系统读取器。在 SPARC 平台上,该文件系统读取器挂载并打开 RAM 磁盘映像,然后读取并执行其中包含的内核。缺省情况下此内核位于 /platform/`uname -m'/kernel/unix 中。在 x86 平台上,GRUB 引导装载程序将内核文件和引导归档文件装入内存,然后将控制权转移给内核。x86 平台上的缺省内核为 /platform/i86pc/kernel/amd64/unix。
注 - 从磁盘引导基于 SPARC 的系统时,OBP 固件将从指定为引导设备的分区读取引导块。该独立引导程序通常包含能够读取 Oracle Solaris 引导归档文件的文件读取器。请参见 boot(1M)。
如果从 ZFS 根文件系统引导,将会在选择用来进行引导的根文件系统(数据集)中解析归档文件和内核文件的路径名。
使用引导管理接口来维护 Oracle Solaris 引导归档文件以及在 x86 平台上管理 GRUB 配置和 GRUB 菜单。
bootadm 命令可处理引导归档文件更新和验证的细节。在安装或升级期间,bootadm 命令会创建初始引导归档文件。在系统正常关机过程中,关机过程会将引导归档文件的内容与根文件系统进行比较。如果系统具有更新(如驱动程序或配置文件),则引导归档文件将重建为包括这些更改,以便在重新引导后,引导归档文件和根文件系统可以同步。可以使用 bootadm 命令手动更新引导归档文件。
在基于 x86 的系统上,通过 bootadm 命令管理 grub.cfg 文件和 x86 引导装载程序。在本发行版中,修改了 bootadm 命令,并且添加了一些新的子命令以使您可以执行大多数管理任务,这些任务先前是通过编辑 menu.lst 文件来完成的。这些任务包括管理 GRUB 菜单、为特定的引导项设置内核参数和管理引导装载程序。有关说明,请参见x86: 使用 bootadm 命令管理 GRUB 配置。
注 - 某些 bootadm 命令选项不适用于 SPARC 平台。
有关更多信息,请参见 bootadm(1M) 和 boot(1M) 手册页。
在安装期间使用 RAM 磁盘 (ramdisk) 映像作为根文件系统。
该过程在 SPARC 平台和 x86 平台上相同。RAM 磁盘 (ramdisk) 映像源自引导归档文件,然后会被从引导设备传送到系统。
注 - 在 SPARC 平台上,OpenBoot PROM 继续用于访问系统的引导设备以及将引导归档文件传送到系统的内存。
对于软件安装,RAM 磁盘 (ramdisk) 映像是用于整个安装过程的根文件系统。使用 RAM 磁盘 (ramdisk) 映像实现此目的消除了从可移除介质频繁访问所需安装组件的需要。RAM 磁盘 (ramdisk) 文件系统类型可以是 High Sierra 文件系统 (High Sierra File System, HSFS) 或 UFS。
支持从带有 GPT 标签的磁盘进行引导。
Oracle Solaris 支持从带有 GPT 标签的磁盘进行引导。从带有 GPT 标签的磁盘进行引导与从使用 MSDOS 分区方案的磁盘进行引导会略有不同。在大多数情况下,在具有 GPT 感知固件的基于 x86 或基于 SPARC 的系统上安装 Oracle Solaris 11.1 会在使用整个磁盘的根池磁盘上应用 GPT 磁盘标签。有关在支持的基于 SPARC 的系统上应用 GPT 感知固件的更多信息,请参见《Oracle Solaris 11.1 发行说明》中的"x86:如果主引导记录中的 EFI_PMBR 项未处于活动状态,则某些带有 BIOS 固件的系统会不引导 (7174841)"。否则,在基于 SPARC 的系统上安装 Oracle Solaris 11.1 会向具有单个分片 0 的根池磁盘应用 SMI (VTOC) 标签。
在 x86 平台上,GRUB 2 的引入实现了此支持。在带有 BIOS 固件的系统上,MBR 仍然是固件为启动引导过程而装入的第一个代码段。带有 GPT 标签的磁盘上不再有 VTOC,而只有独立分区。GRUB 现在直接支持读取和解释 GPT 分区方案,以使引导装载程序可以定位 Oracle Solaris 内核文件和在 ZFS GPT 分区中托管的根池内的引导归档文件。
在带有 UEFI 固件的系统上,主要区别在于固件从(基于 FAT 的)EFI 系统分区装入引导应用程序。在 UEFI 系统上装载 GRUB 后,它将执行与针对 BIOS 的 GRUB 类似的任务。
引导归档文件是根文件系统的子集。此引导归档文件包含所有的内核模块、driver.conf 文件,以及几个配置文件。这些文件位于 /etc 目录中。挂载根文件系统之前,内核将读取引导归档文件中的文件。挂载根文件系统之后,内核将从内存中放弃引导归档文件。然后,系统将针对根设备执行文件 I/O。
bootadm 命令可管理 SPARC 和 x86 平台上的引导归档文件,包括引导归档文件更新和验证的详细信息。在系统正常关机过程中,关机过程会将引导归档文件的内容与根文件系统进行比较。如果系统具有更新(如驱动程序或配置文件),则引导归档文件将重建为包括这些更改,以便在重新引导后,引导归档文件和根文件系统可以同步。
x86 引导归档文件中的文件位于 /platform/i86pc/amd64/archive_cache 目录中。SPARC 引导归档文件中的文件位于 /platform/`uname -m`/archive_cache 目录中。要列出 SPARC 和 x86 平台上引导归档文件的内容,请使用 bootadm list-archive 命令:
$ bootadm list-archive
如果更新了引导归档文件中的任何文件,则必须重建该归档文件。使用 bootadm update-archive 命令,您可以手动生成引导归档文件。此命令可用作预防措施或恢复过程的一部分。
# bootadm update-archive
为使修改生效,必须在重新引导系统之前重建归档文件。有关更多信息,请参见管理 Oracle Solaris 引导归档文件。