JavaScript is required to for searching.
跳过导航链接
退出打印视图
引导和关闭 Oracle Solaris 11.1 系统     Oracle Solaris 11.1 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  引导和关闭系统(概述)

2.  x86: 管理 GRand Unified Bootloader(任务)

3.  关闭系统(任务)

4.  引导系统(任务)

显示和设置引导属性

SPARC: 使用 OpenBoot PROM 显示和设置引导属性

SPARC: 如何标识系统的 PROM 修订版本号

SPARC: 如何标识系统中的设备

SPARC: 如何确定缺省引导设备

SPARC: 如何使用引导 PROM 更改缺省引导设备

设置 EEPROM 参数

SPARC: 如何使用 eeprom 实用程序设置缺省引导设备

x86: 通过 SMF 管理关机动画

引导系统

运行级别的工作原理

系统引导到多用户状态(运行级别 3)时发生的情况

何时使用运行级别或里程碑

确定系统的当前运行级别

如何将系统引导至多用户状态(运行级别 3)

如何将系统引导至单用户状态(运行级别 S)

如何以交互方式引导系统

从备用操作系统或引导环境进行引导

SPARC: 如何从备用操作系统或引导环境进行引导

x86: 如何从备用操作系统或引导环境进行引导

重新引导系统

如何使用 init 命令重新引导系统

如何使用 reboot 命令重新引导系统

加快重新引导过程

x86: 关于 quiesce 函数

如何对系统启动快速重新引导

x86: 对系统启动快速重新引导以引导至新激活的引导环境

更改缺省快速重新引导行为

对启用了快速重新引导的系统启动标准重新引导

5.  从网络引导系统(任务)

6.  对引导系统进行故障排除(任务)

索引

重新引导系统

本节提供了以下过程:

通常,系统会在加电时或在系统崩溃后进行重新引导。可以通过使用 init 命令或 reboot 命令重新引导系统。init 6 命令要求停止方法(SMF 或 rc.d)。但是,reboot 命令不会,因此 reboot 命令将成为重新引导系统时更为可靠的方法。有关详细信息,请参见 init(1M)reboot(1M)

reboot 执行以下操作:

尽管 reboot 命令在任何时候均可供 root 用户使用,但在某些情况下,当服务器重新引导时,通常会首先使用 shutdown 命令警告所有已登录系统的用户服务即将丢失。有关更多信息,请参见第 3 章

如何使用 init 命令重新引导系统

系统始终在一组定义完善的运行级别中的某一级运行。由于运行级别由 init 进程维护,因此运行级别也称为 init 状态init 命令可用于启动运行级别转换。使用 init 命令重新引导系统时,运行级别 2、3 和 4 可用作多用户系统状态。请参见运行级别的工作原理

init 命令是一种可执行的 shell 脚本,用于在更改运行级别之前终止系统上的所有活动进程然后同步磁盘。init 6 命令将停止操作系统,并重新引导至 /etc/inittab 文件中的 initdefault 项定义的状态。


注 - 从 Oracle Solaris 11 发行版开始,将缺省启用 SMF 服务 svc:/system/boot-config:defaultconfig/fastreboot_default 属性设置为 true 时(适用于所有基于 x86 的系统),init 6 会根据系统的具体功能,跳过某些固件初始化和测试步骤。在基于 SPARC 的系统上,该属性缺省设置为 false,但可以手动启用该属性。请参见加快重新引导过程


  1. 承担 root 角色。

    请参见《Oracle Solaris 11.1 管理:安全服务》中的"如何使用指定给您的管理权限"

  2. 重新引导系统。
    • 要将系统重新引导至 /etc/inittab 文件中由 initdefault 项定义的状态,请键入以下命令:
      # init 6
    • 要将系统重新引导至多用户状态,请键入以下命令:
      # init 2

示例 4-12 使用 init 命令将系统重新引导至单用户状态(运行级别 S)

在本示例中,init 命令用于将系统重新引导至单用户状态(运行级别 S)。

~# init s
~# svc.startd: The system is coming down for administration.  Please wait.
Jul 20 16:59:37 system-04 syslogd: going down on signal 15
svc.startd: Killing user processes.
Requesting System Maintenance Mode
(See /lib/svc/share/README for more information.)
SINGLE USER MODE

Enter user name for system maintenance (control-d to bypass): root
Enter root password (control-d to bypass): xxxxxx
single-user privilege assigned to root on /dev/console.
Entering System Maintenance Mode

Jul 20 17:11:24 su: 'su root' succeeded for root on /dev/console
Oracle Corporation      SunOS 5.11      11.1    June 2012
You have new mail.
~# who -r
   .       run-level S  Jul 20 17:11     S      1  3

如何使用 reboot 命令重新引导系统

使用此过程将正在运行的系统重新引导至多用户状态(运行级别 3)。


注 - 在 x86 平台上,使用 reboot 命令对系统启动快速重新引导,绕过 BIOS 或 UEFI 固件以及某些引导过程。要对已启用快速重新引导功能的基于 x86 的系统执行标准重新引导,必须在 reboot 命令中使用 -p 选项。请参见对启用了快速重新引导的系统启动标准重新引导


  1. 承担 root 角色。

    请参见《Oracle Solaris 11.1 管理:安全服务》中的"如何使用指定给您的管理权限"

  2. 重新引导系统。
    # reboot

加快重新引导过程

SPARC 和 x86 平台均支持 Oracle Solaris 的快速重新引导功能。快速重新引导功能实现了一种内核内引导装载程序,它可将内核装入内存,然后再切换到该内核,因此重新引导过程在几秒钟之内就能完成。

新的 boot-config 服务 svc:/system/boot-config:default 有助于提供快速重新引导功能支持。如果需要,此服务会提供一种设置或更改系统的缺省引导配置属性的方法。将 config/fastreboot_default 属性设置为 true 时,系统会自动执行快速重新引导。缺省情况下,在基于 x86 的系统上,该属性设置为 true,而在基于 SPARC 的系统上,该属性设置为 false

在基于 x86 的系统上,快速重新引导系统将绕过系统固件(BIOS 或 UEFI)以及引导装载程序进程。缺省情况下,在 x86 平台上,快速重新引导和应急快速重新引导(在系统出现紧急情况后快速重新引导系统)均已启用,因此不需要在 reboot 命令中使用 -f 选项即可对基于 x86 的系统启动快速重新引导。

快速重新引导功能在基于 SPARC 的系统上的运行方式与在基于 x86 的系统上的运行方式不同。请注意以下关于 SPARC 平台上的快速重新引导支持的其他信息:

x86: 关于 quiesce 函数

系统在引导新 OS 映像时绕过固件的功能依赖于设备驱动程序对新设备操作入口点 quiesce 的实现。在支持的驱动程序上,该实现将停止设备,因此函数完成后,该驱动程序不再产生中断。该实现还会将设备重置为硬件状态,在该状态下,可以通过驱动程序的连接例程对设备进行正确配置,而无需对系统进行关开机循环或通过固件进行配置。有关此功能的更多信息,请参见 quiesce(9E)dev_ops(9S) 手册页。


注 - 并非所有设备驱动程序均实现 quiesce 函数。有关故障排除说明,请参见x86: 快速重新引导可能无法工作的情况x86: 如何在不支持快速重新引导的系统上清除失败的自动引导归档文件更新


如何对系统启动快速重新引导

  1. 承担 root 角色。

    请参见《Oracle Solaris 11.1 管理:安全服务》中的"如何使用指定给您的管理权限"

  2. 根据系统平台,执行以下操作之一:
    • 在基于 SPARC 的系统上,键入以下命令:
      # reboot -f
    • 在基于 x86 的系统上,键入以下任一命令:
      # reboot
      # init 6

      运行这些命令之一可将系统重新引导至 grub.cfg 文件中的缺省项。

x86: 对系统启动快速重新引导以引导至新激活的引导环境

可以通过多种方法将基于 x86 的系统快速重新引导至备用引导环境。以下示例说明了其中的一些方法。

示例 4-13 x86: 对系统启动快速重新引导以引导至新激活的引导环境

以下示例说明如何对系统启动快速重新引导,以引导至新激活的引导环境 2012-06-10-be

# beadm activate 2012-06-10-be
# reboot

示例 4-14 x86: 通过指定备用引导环境对系统启动快速重新引导

要将系统快速重新引导至备用引导环境(例如 zfsbe2),需要键入以下命令:

# reboot -- 'rpool/zfsbe2'

要对系统启动快速重新引导以引导至名为 rpool/zfsbe1 的数据集,需要键入以下命令:

# reboot -- 'rpool/zfsbe1'

例如,可对系统启动快速重新引导以引导至备用的 ZFS 根数据集,如下所示:

# reboot -- 'rpool/ROOT/zfsroot2'

示例 4-15 x86: 在启用内核调试器的情况下对系统启动快速重新引导以引导至备用引导环境

对系统启动快速重新引导以引导至 zfsbe3 引导环境,如下所示:

# reboot -- 'rpool/zfsbe3 /platform/i86pc/kernel/amd64/unix -k'

示例 4-16 x86: 对系统启动快速重新引导以引导至新内核

对系统启动快速重新引导以引导至名为 my-kernel 的新内核,如下所示:

# reboot -- '/platform/i86pc/my-kernel/amd64/unix -k'

示例 4-17 x86: 对挂载的磁盘或挂载的数据集启动快速重新引导

对挂载的磁盘或挂载的数据集启动快速重新引导,如下所示:

# reboot -- '/mnt/platform/i86pc/my-kernel/amd64/unix -k'

示例 4-18 x86: 在启用内核调试器的情况下对系统启动快速重新引导以引导至单用户状态

在启用内核调试器的情况下,对系统启动快速重新引导以引导至单用户状态,如下所示:

# reboot -- '-ks'

更改缺省快速重新引导行为

快速重新引导功能由 SMF 进行控制,并通过引导配置服务 svc:/system/boot-config 来实现。boot-config 服务提供了一种设置或更改缺省引导参数的方法。

boot-config 服务的 fastreboot_default 属性可以实现在使用 rebootinit 6 命令时,系统自动执行快速重新引导。将 config/fastreboot_default 属性设置为 true 时,系统将自动执行快速重新引导,不需要使用 reboot --f 命令。缺省情况下,在基于 x86 的系统上,该属性值设置为 true,而在基于 SPARC 的系统上,该属性值设置为 false

示例 4-19 x86: 配置 boot-config 服务的属性

svc:/system/boot-config:default 服务包括以下属性:

通过使用 svccfgsvcadm 命令可以配置这些属性。

例如,要在基于 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) 手册页。

示例 4-20 SPARC: 配置 boot-config 服务的属性

以下示例说明了如何通过将 boot-config SMF 服务属性设置为 true,以使快速重新引导成为基于 SPARC 的系统上的缺省行为。

# svccfg -s "system/boot-config:default" setprop config/fastreboot_default=true
# svcadm refresh svc:/system/boot-config:default

将该属性的值设置为 true 会加速重新引导过程,并将允许支持快速重新引导功能的系统绕过某些 POST 测试。将此属性设置为 true 时,可以对系统执行快速重新引导而不必在 reboot 命令中使用 -f 选项。

对启用了快速重新引导的系统启动标准重新引导

要重新引导已启用快速重新引导功能的系统,而不重新配置 boot-config 服务以禁用该功能,请在 reboot 命令中使用 -p 选项,如下所示:

# reboot -p