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

文档信息

前言

1.  引导和关闭基于 SPARC 的系统(概述)

2.  将基于 SPARC 的系统引导至指定状态(任务)

3.  关闭系统(任务)

4.  重新引导基于 SPARC 的系统(任务)

5.  从网络引导基于 SPARC 的系统(任务)

6.  在基于 SPARC 的系统上修改引导参数(任务)

7.  在 SPARC 平台上从 ZFS 引导环境创建、管理和引导(任务)

8.  使基于 SPARC 的系统保持可引导(任务)

9.  对引导基于 SPARC 的系统进行故障排除(任务)

对引导基于 SPARC 的系统进行故障排除(任务列表)

关闭和引导基于 SPARC 的系统以便进行恢复

为恢复系统而停止和引导系统

如何为进行恢复而停止系统

如何在单用户模式下进行引导以解决 root Shell 或口令错误问题

如何从介质进行引导以解决 root 口令未知问题

如何在不启动任何服务的情况下引导系统

强制对基于 SPARC 的系统实施故障转储和重新引导

如何强制实施故障转储和系统重新引导

如何在启用内核调试器 (kmdb ) 的情况下引导系统

索引

关闭和引导基于 SPARC 的系统以便进行恢复

在以下情况下,必须先关闭系统以进行分析,或对引导和其他系统问题进行故障排除。

下面的过程介绍了如何安全地关闭然后再引导基于 SPARC 的系统以便进行恢复。

为恢复系统而停止和引导系统

为实现恢复,您可能需要引导系统。以下是一些较为常见的错误和恢复方案:

如何为进行恢复而停止系统

  1. 使用 shutdowninit 0 命令使系统进入 ok PROM 提示符下。
  2. 同步文件系统。
    ok sync
  3. 键入相应的 boot 命令以启动引导过程。

    有关更多信息,请参见 boot(1M) 手册页。

  4. 确认已将系统引导至指定的运行级别。
    # who -r
     .       run-level s  May  2 07:39     3      0  S

示例 9-1 关闭服务处理器电源

如果是在 Oracle ILOM 服务处理器上运行 Oracle Solaris 11,关闭操作系统后,必须从系统控制台提示符切换到服务处理器提示符。然后,可以从服务处理器提示符处停止服务处理器,如以下示例所示:

# shutdown -g0 -i0 -y
# svc.startd: The system is coming down. Please wait.
svc.startd: 91 system services are now being stopped.
Jun 12 19:46:57 wgs41-58 syslogd: going down on signal 15
svc.stard: The system is down.
syncing file systems...done
Program terminated
r)eboot o)k prompt, h)alt?
# o
ok #.
->
-> stop /SYS
Are you sure you want to stop /SYS (y/n)? y
Stopping /SYS
 
->

如果需要立即执行关闭,请使用 stop -force -script /SYS 命令。在键入此命令之前,请确保已保存所有数据。

示例 9-2 打开服务处理器电源

以下示例说明如何打开服务器电源。必须先登录到 Oracle ILOM。请参见 http://download.oracle.com/docs/cd/E19166-01/E20792/z40002fe1296006.html#scrolltoc

如果使用的是模块化系统,请确保您已登录到所需的服务器模块。

-> start /SYS
Are you sure you want to start /SYS (y/n) ? y
Starting /SYS
 
->

如果不想收到确认提示,请使用 start -script /SYS 命令。

如何在单用户模式下进行引导以解决 root Shell 或口令错误问题

  1. 使系统进入 ok PROM 提示符下。请参见如何为进行恢复而停止系统
  2. 在单用户模式下引导系统。
    ok boot -s
  3. 更正 /etc/passwd 文件中的 shell 项。
    # vi /etc/password
  4. Ctrl-D 组合键重新引导系统。

如何从介质进行引导以解决 root 口令未知问题

  1. 从 Oracle Solaris 介质引导系统。
    • 文本安装-从安装介质或者从网络进行引导,然后从文本安装屏幕中选择 3 Shell 选项。
    • 自动化安装-使用以下命令从允许退出到 shell 的安装菜单直接引导。
      ok boot net:dhcp
  2. 在 shell 提示符下,导入根池。
    # zpool import -f rpool
  3. 为引导环境创建挂载点。
    # mkdir /a
  4. 挂载引导环境。
    # beadm mount solaris-instance|bename /a
  5. 设置 TERM 类型。
    # TERM=vt100
    # export TERM
  6. 谨慎地删除未知的口令项。
    # cd /a/etc
    # vi shadow
    # cd /

    注 - 在完成此步骤后必须更改目录。


  7. 更新引导归档文件。
    # bootadm update-archive -R /a
  8. 取消挂载引导环境。
    # beadm umount be-name
  9. 停止系统。
    # halt
  10. 在单用户模式下重新引导系统,在提示输入 root 口令时,按回车键。例如:
    ok boot -s
    Boot device: /pci@780/pci@0/pci@9/scsi@0/disk@0,0:a File and args: -s
    SunOS Release 5.11 Version 11.0 64-bit
    Copyright (c) 1983, 2011, Oracle and/or its affiliates. All rights
    reserved.
    Booting to milestone "milestone/single-user:default".
    Hostname: tardis.central
    Requesting System Maintenance Mode
    SINGLE USER MODE
    Enter user name for system maintenance (control-d to bypass): root
    Enter root password (control-d to bypass): <Press return>
    single-user privilege assigned to root on /dev/console.
    Entering System Maintenance Mode
  11. 重置 root 口令。
    root@system:~# passwd -r files root
    New Password: xxxxxx
    Re-enter new Password: xxxxxx
    passwd: password successfully changed for root
  12. Ctrl-D 组合键重新引导系统。

另请参见

如果系统上的缺省 OS 未成功引导,则需要从备用 ZFS 数据集进行引导。有关故障排除的更多信息,请参见在 SPARC 平台上从 ZFS 引导环境引导

如何在不启动任何服务的情况下引导系统

如果在启动服务时出现问题,有时系统会在引导过程中挂起。以下过程显示如何解决此问题。

  1. 在不启动任何服务的情况下引导。

    此命令指示 svc.startd 守护进程临时禁用所有的服务并在控制台上启动 sulogin

    ok boot -m milestone=none
  2. 登录到系统并成为 root 角色。
  3. 启用所有的服务。
    # svcadm milestone all
  4. 在引导过程挂起时,确定未在运行的服务和引导过程挂起的位置。
    # svcs -a
  5. 检查 /var/svc/log 内日志文件中的错误消息。
  6. 在问题得以修复之后,检验所有的服务是否已启动。
    1. 检验是否所有必需的服务都已联机。
      # svcs -x
    2. 检验是否满足 console-login 服务的相关性。

      以下命令检验控制台上的 login 进程是否将运行。

      # svcs -l system/console-login:default
  7. 继续执行正常的引导过程。

强制对基于 SPARC 的系统实施故障转储和重新引导

有时,为了排除故障,必须强制实施故障转储并重新引导系统。缺省情况下将启用 savecore 功能。

有关系统故障转储的更多信息,请参见《Oracle Solaris 管理:常见任务》中的第 17  章 "管理系统故障转储信息(任务)"

如何强制实施故障转储和系统重新引导

使用以下过程可以强制实施系统故障转储。该示例遵循以下过程,说明如何使用 halt -d 命令强制实施系统故障转储。运行此命令后,您需要以手动方式重新引导系统。

  1. 使系统进入 ok PROM 提示符下。
  2. 同步文件系统并写入故障转储。
    > n
    ok sync

    将故障转储写入磁盘后,系统将继续重新引导。

  3. 确认系统引导至运行级别 3。

    引导过程成功完成后,将显示登录提示。

    hostname console login:

示例 9-3 SPARC: 使用 halt -d 命令强制实施故障转储和系统重新引导

本示例说明如何使用 halt-dboot 命令强制实施故障转储和系统重新引导。

# halt -d
Jul 21 14:13:37 jupiter halt: halted by root

panic[cpu0]/thread=30001193b20: forced crash dump initiated at user request

000002a1008f7860 genunix:kadmin+438 (b4, 0, 0, 0, 5, 0)
  %l0-3: 0000000000000000 0000000000000000 0000000000000004 0000000000000004
  %l4-7: 00000000000003cc 0000000000000010 0000000000000004 0000000000000004
000002a1008f7920 genunix:uadmin+110 (5, 0, 0, 6d7000, ff00, 4)
  %l0-3: 0000030002216938 0000000000000000 0000000000000001 0000004237922872
  %l4-7: 000000423791e770 0000000000004102 0000030000449308 0000000000000005

syncing file systems... 1 1 done
dumping to /dev/dsk/c0t0d0s1, offset 107413504, content: kernel
100% done: 5339 pages dumped, compression ratio 2.68, dump succeeded
Program terminated
ok boot
Resetting ... 

.
.
Rebooting with command: boot
Boot device: /pci@1f,0/pci@1,1/ide@3/disk@0,0:a
File and args: kernel/sparcv9/unix
configuring IPv4 interfaces: hme0.
add net default: gateway 172.20.27.248
Hostname: jupiter
The system is coming up.  Please wait.
NIS domain name is example.com
.
.
.
System dump time: Wed Jul 21 14:13:41 2010
Jul 21 14:15:23 jupiter savecore: saving system crash dump
in /var/crash/jupiter/*.0
Constructing namelist /var/crash/jupiter/unix.0
Constructing corefile /var/crash/jupiter/vmcore.0
100% done: 5339 of 5339 pages saved
.
.
.

如何在启用内核调试器 (kmdb ) 的情况下引导系统

此过程说明如何装入内核调试器 (kmdb)。


注 - 如果没有时间交互式地调试系统,请使用 reboot 命令和带有 -d 选项的 halt 命令。运行带有 -d 选项的 halt 命令后需要手动重新引导系统。但是,如果使用 reboot 命令,系统会自动进行引导。有关更多信息,请参见 reboot(1M)


  1. 停止系统,使其显示 ok 提示符。

    要正常停止系统,请使用 halt 命令。

  2. 要请求装入内核调试器,请键入 boot kmdbboot -k。按回车键。
  3. 访问内核调试器。

    进入调试器的方法取决于访问系统所使用的控制台类型:

    • 如果使用本地连接的键盘,请按 Stop-A 或 L1–A 组合键,具体取决于键盘的类型。
    • 如果使用串行控制台,请使用适合于您的串行控制台类型的方法来发送中断信号。

    首次输入内核调试器时,将显示欢迎消息。

    Rebooting with command: kadb
    Boot device: /iommu/sbus/espdma@4,800000/esp@4,8800000/sd@3,0
    .
    .
    .

示例 9-4 SPARC: 在启用内核调试器 (kmdb) 的情况下引导系统

ok boot kmdb
Resetting...

Executing last command: boot kmdb -d
Boot device: /pci@1f,0/ide@d/disk@0,0:a File and args: kmdb -d
Loading kmdb...