跳过导航链接 | |
退出打印视图 | |
在 x86 平台上引导和关闭 Oracle Solaris Oracle Solaris 11 Information Library (简体中文) |
使用 Oracle Solaris 的快速重新引导功能,可以绕过固件和引导装载程序进程重新引导基于 x86 的系统。快速重新引导实现了一种内核内引导装载程序,它可将内核装入内存,然后再切换到该内核,因此重新引导过程在几秒钟之内就能完成。缺省情况下,快速重新引导和应急快速重新引导(在系统出现紧急情况后快速重新引导系统)均已启用,因此不需要在 reboot 命令中使用 -f 选项即可对基于 x86 的系统启动快速重新引导。
新的 boot-config 服务 svc:/system/boot-config:default 有助于提供快速重新引导支持。如果需要,此服务会提供一种设置或更改系统的缺省引导配置属性的方法。将 config/fastreboot_default 属性设置为 true 时,系统会自动执行快速重新引导。在基于 x86 的系统上,此属性的值设置为 true。有关更多信息,请参见更改快速重新引导功能的缺省行为。
系统在引导新 OS 映像时绕过固件的功能依赖于设备驱动程序对新设备操作入口点 quiesce 的实现。在支持的驱动程序上,该实现将停止设备,因此函数完成后,该驱动程序不再产生中断。该实现还会将设备重置为硬件状态,在该状态下,可以通过驱动程序的连接例程对设备进行正确配置,而无需对系统进行关开机循环或通过固件进行配置。有关此功能的更多信息,请参见 quiesce(9E) 和 dev_ops(9S) 手册页。
要查看详细介绍快速重新引导过程的演示,请转到 http://download.oracle.com/otndocs/tech/OTN_Demos/x86/x86-OTN-Demo/x86-OTN-Demo.html。
注 - 在此 Oracle Solaris 发行版中,快速重新引导在基于 x86 的系统上是缺省操作模式。以前,要对基于 x86 的系统启动快速重新引导,您需要在 reboot 命令中指定 -f 选项才能对系统启动快速重新引导。现在,您不再需要指定此选项。
# reboot
# init 6
可以通过多种方法将基于 x86 的系统快速重新引导至备用引导环境。以下示例说明了其中的一些方法。
示例 4-2 x86: 对系统启动重新引导以引导至新激活的引导环境
以下示例说明如何对系统启动快速重新引导,以引导至新激活的引导环境 2010-12-10-be。
# bootadm list-menu the location for the active GRUB menu is: /rpool/boot/grub/menu.lst default 0 0 oracle solaris 11 1 2010-12-10-be 2 zfsbe2 3 2010-12-10-be-s
# beadm activate 2010-12-10-be # reboot
示例 4-3 x86: 通过指定备用引导环境对系统启动重新引导
要将系统快速重新引导至备用引导环境(例如 zfsbe2),需要键入以下命令:
# reboot -- 'rpool/zfsbe2'
要对系统启动快速重新引导以引导至名为 rpool/zfsbe1 的数据集,需要键入以下命令:
# reboot -- 'rpool/zfsbe1'
要对系统启动快速重新引导以引导至备用的 ZFS 根数据集,需要键入以下命令:
# reboot -- 'rpool/ROOT/zfsroot2'
示例 4-4 在启用内核调试器的情况下对系统启动快速重新引导以引导至备用引导环境
要在启用内核调试器的情况下对系统启动快速重新引导以引导至 zfsbe3 引导环境,需要键入以下命令:
# reboot -- 'rpool/zfsbe3 /platform/i86pc/kernel/amd64/unix -k'
示例 4-5 x86: 对系统启动重新引导以引导至新内核
要对系统启动快速重新引导以引导至名为 my-kernel 的新内核,需要键入以下命令:
# reboot -- '/platform/i86pc/my-kernel/amd64/unix -k'
示例 4-6 x86: 对挂载的磁盘或挂载的数据集启动重新引导
要对挂载的磁盘或挂载的数据集启动快速重新引导,需要键入以下命令:
# reboot -- '/mnt/platform/i86pc/my-kernel/amd64/unix -k'
示例 4-7 x86: 在启用内核调试器的情况下对系统启动重新引导以引导至单用户状态
要在启用内核调试器的情况下对系统启动快速重新引导以引导至单用户状态,需要键入以下命令:
# reboot -- '-ks'
快速重新引导功能由 SMF 进行控制,并通过引导配置服务 svc:/system/boot-config 来实现。boot-config 服务提供了一种设置或更改缺省引导参数的方法。
boot-config 服务的 fastreboot_default 属性可以实现在使用 reboot 或 init 6 命令时,系统自动执行快速重新引导。将 config/fastreboot_default 属性设置为 true 时,系统将自动执行快速重新引导,不需要使用 reboot --f 命令。缺省情况下,在基于 x86 的系统上此属性的值设置为 true。
svc:/system/boot-config:default 服务包括以下属性:
config/fastreboot_default
config/fastreboot_onpanic
示例 4-8 x86: 配置 boot-config 服务的属性
可使用 svccfg 和 svcadm 命令配置属于 boot-config 服务一部分的属性。
例如,要在基于 x86 的系统上禁用 fastreboot_onpanic 属性的缺省行为,需要将属性的值设置为 false,如下所示:
# svccfg -s "system/boot-config:default" setprop config/fastreboot_onpanic=false # svcadm refresh svc:/system/boot-config:default
请注意,更改一个属性的值不会影响其他属性的缺省行为。
有关通过 SMF 管理引导配置服务的信息,请参见 svcadm(1M) 和 svccfg(1M) 手册页。
要重新引导已启用快速重新引导功能的基于 x86 的系统,而不重新配置 boot-config 服务以禁用该功能,请在 reboot 命令中使用 -p 选项,如下所示:
# reboot -p