引导 PROM 用于引导系统。您可能需要更改系统引导的方法。例如,在系统进入多用户级别之前,可能需要重置要引导的设备或运行硬件诊断。
系统管理员通常使用 PROM 级别引导系统。您还可以在 PROM 级别更改缺省引导文件和引导设备。
如果您需要执行以下任一任务,则需要更改缺省引导设备:
向系统永久或临时性地添加新的驱动器
更改网络引导策略
从网络临时引导独立系统
有关 PROM 命令的完整列表,请参见 monitor(1M) 和 eeprom(1M) 手册页。
ok banner Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #number. Ethernet address number, Host ID: number. |
可能需要标识系统中的设备,以确定引导系统的合适设备。
需要执行以下操作后,才能安全地使用 probe 命令来确定与系统连接的设备。
将 PROM auto-boot? 参数更改为 False。
ok setenv auto-boot? false |
发出 reset-all 命令以清除系统注册。
ok reset-all |
您可以使用 sifting probe 命令查看系统提供的 probe 命令:
ok sifting probe |
如果在未清除系统注册的情况下运行 probe 命令,系统将会显示以下消息:
ok probe-scsi This command may hang the system if a Stop-A or halt command has been executed. Please type reset-all to reset the system before executing this command. Do you wish to continue? (y/n) n |
标识系统中的设备。
ok probe-device |
(可选)如果希望让系统在断电或使用 reset 命令之后重新引导,请将 auto-boot? 参数重置为 True。
ok setenv auto-boot? true auto-boot? = true |
将系统引导至多用户模式。
ok reset-all |
以下示例显示如何标识与 Ultra 10 系统连接的设备。
ok setenv auto-boot? false auto-boot? = false ok reset-all Resetting ... Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #10933339. Ethernet address 8:0:20:a6:d4:5b, Host ID: 80a6d45b. ok probe-ide Device 0 ( Primary Master ) ATA Model: ST34321A Device 1 ( Primary Slave ) Not Present Device 2 ( Secondary Master ) Removable ATAPI Model: CRD-8322B Device 3 ( Secondary Slave ) Not Present ok setenv auto-boot? true auto-boot? = true |
或者,您可以使用 devalias 命令标识 可能 与系统相连接设备的设备别名和关联路径。例如:
ok devalias screen /pci@1f,0/pci@1,1/SUNW,m64B@2 net /pci@1f,0/pci@1,1/network@1,1 cdrom /pci@1f,0/pci@1,1/ide@3/cdrom@2,0:f disk /pci@1f,0/pci@1,1/ide@3/disk@0,0 disk3 /pci@1f,0/pci@1,1/ide@3/disk@3,0 disk2 /pci@1f,0/pci@1,1/ide@3/disk@2,0 disk1 /pci@1f,0/pci@1,1/ide@3/disk@1,0 disk0 /pci@1f,0/pci@1,1/ide@3/disk@0,0 ide /pci@1f,0/pci@1,1/ide@3 floppy /pci@1f,0/pci@1,1/ebus@1/fdthree ttyb /pci@1f,0/pci@1,1/ebus@1/se:b ttya /pci@1f,0/pci@1,1/ebus@1/se:a keyboard! /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8:forcemode keyboard /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8 mouse /pci@1f,0/pci@1,1/ebus@1/su@14,3062f8 name aliases |
使系统进入 ok PROM 提示符下。
有关更多信息,请参见如何关闭独立系统。
使用 printenv 命令确定缺省引导设备。
ok printenv boot-device |
标识用于设置引导设备的参数。
标识 boot-device 值,如磁盘或网络。可以将 n 指定为磁盘编号。
将会以类似如下的格式显示缺省引导设备:
boot-device = /pci@1f,4000/scsi@3/disk@1,0:a
如果缺省引导设备是网络引导设备,则输出将类似如下:
boot-device = /sbus@1f,0/SUNW,fas@e,8800000/sd@a,0:a \ /sbus@1f,0/SUNW,fas@e,8800000/sd@0,0:a disk net
将缺省引导设备更改为某个其他设备之前,可能需要标识系统上的设备。有关如何标识系统上设备的信息,请参见SPARC: 如何标识系统中的设备。
更改为运行级别 0。
# init 0 |
此时将显示 ok PROM 提示符。有关更多信息,请参见 init(1M) 手册页。
更改 boot-device 参数的值。
ok setenv boot-device device[n] |
请使用 probe 命令之一,帮助您标识磁盘编号。
确认缺省引导设备已更改。
ok printenv boot-device |
保存新 boot-device 值。
ok reset-all |
新 boot-device 值将被写入 PROM。
在本示例中,将缺省引导设备设置为磁盘。
# init 0 # INIT: New run level: 0 . . . The system is down. syncing file systems... done Program terminated ok setenv boot-device /pci@1f,4000/scsi@3/disk@1,0 boot-device = /pci@1f,4000/scsi@3/disk@1,0 ok printenv boot-device boot-device /pci@1f,4000/scsi@3/disk@1,0 ok boot Resetting ... screen not found. Can't open input device. Keyboard not present. Using ttya for input and output. Sun Enterprise 220R (2 X UltraSPARC-II 450MHz), No Keyboard OpenBoot 3.23, 1024 MB memory installed, Serial #13116682. Ethernet address 8:0:20:c8:25:a, Host ID: 80c8250a. Rebooting with command: boot disk1 Boot device: /pci@1f,4000/scsi@3/disk@1,0 File and args: |
在本示例中,将缺省引导设备设置为网络。
# init 0 # INIT: New run level: 0 . . . The system is down. syncing file systems... done Program terminated ok setenv boot-device net boot-device = net ok printenv boot-device boot-device net disk ok reset Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #number. Ethernet address number, Host ID: number. Boot device: net File and args: . . . pluto console login: |
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
指定要引导的备用内核。
# eeprom boot-device new-boot-device |
确认已设置新的参数。
# eeprom boot-device |
输出应该显示 boot-device 参数的新的 eeprom 值。
ok reset-all |
系统将执行自检程序,对硬件运行诊断测试。然后,如果 auto-boot? 参数设置为 true,则重新引导系统。
更改为运行级别 0。
# init 0 |
此时将显示 ok PROM 提示符。有关更多信息,请参见 init(1M) 手册页。
将 boot-file 属性设置为备用内核。
ok setenv boot-file boot-file |
确认缺省引导设备已更改。
ok printenv boot-file |
保存新的 boot-file 值。
ok reset-all |
新的 boot-file 值会被写入 PROM。
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
指定要引导的备用内核。
# eeprom boot-file new boot-file |
例如:
# eeprom boot-file=kernel.name/sparcv9/unix |
确认已设置新的参数。
# eeprom boot-file |
输出应该显示指定参数的新的 eeprom 值。
ITU 实用工具用于将软件包和修补程序转换为驱动更新 (Driver Update, DU) 格式,然后修补 Oracle Solaris 安装介质,这样您就可以使用这些新软件包和修补程序来引导系统。从 Oracle Solaris 10 9/10 开始,对 itu 命令进行了修改以使您能够在基于 SPARC 的系统上创建并存储 ITU,然后使用新创建的 ITU 引导系统。
ITU 实用程序允许您安装开箱即用驱动程序,并在安装过程中应用缺陷修补程序。以下步骤介绍了在基于 SPARC 的系统上创建并存储 ITU,然后使用新创建的 ITU 引导系统的过程。
在您要使用 ITU 引导的系统上,成为超级用户。
通过使用带有以下选项的 itu 命令创建 ITU:
# itu makedu -r solaris-release -o iso-file package1-name package2-name... |
使用一个或多个驱动程序软件包作为输入项,并将软件包转换为 DU 格式。
指定要进行驱动程序更新的 Oracle Solaris 发行版本号。使用的发行版本号格式为 5.10。
指定要创建的 ISO 映像文件路径。
有关 itu 命令及其所有选项的详细信息,请参见 itu(1M) 手册页。
使系统进入 ok PROM 提示符下。
禁用 auto-boot 属性。
ok setenv auto-boot?=false |
重置系统。
ok reset-all |
上一步骤很重要,因为它确保引导系统时不清除 itu-device 字符串。
查找 cdrom 别名。
ok devalias cdrom |
别名是连接到系统上 CD 或 DVD 驱动器的设备路径。请注意:此输出会因系统的不同而异。例如,在此过程中,cdrom 别名的位置如下所示:
/pci@8,700000/scsi@1/disk@6,0:f |
配置用于安装 ITU 的 itu-device 路径。
请注意:步骤 6 中的输出用于 config-string 的第一部分,如以下示例中所示:
ok> " /pci@8,700000/scsi@1/disk@6,0:f" d# 80 config-string itu-device |
80 指字符串允许的最大长度。如果您所修改的 cdrom 别名字符数大于 80,请适当地增加此数字。
使用 ITU 引导系统。
ok boot |
当您引导系统且 Solaris 安装过程开始时,系统将查找存储在 itu-device 上的 ITU。然后系统将标识和配置 itu-device 上可用的系统组件。另外还将标识和配置适用这些驱动程序的设备。安装完成后,设备可作为安装目标使用。
安装完成后,还原 auto-boot 属性的缺省值,然后引导系统。
ok setenv auto-boot?=true |
上述示例中假设 auto-boot 属性的缺省值为 true。
引导系统。
ok boot |