修改引导参数
在 SPARC 平台上,使用引导 PROM 可引导基于 SPARC 的系统和修改引导参数。例如,您可能希望在使系统进入多用户状态之前重置从中引导的设备,更改缺省引导文件或内核,或运行硬件诊断。
有关 PROM 命令的完整列表,请参见 monitor(1M) 和 eeprom(1M) 手册页。
在 x86 平台上,修改引导参数的主要方法如下所述:
使用 eeprom 命令
eeprom 命令用于将不同的值指定给标准的参数集。这些与 SPARC OpenBoot PROM NVRAM 变量等效的值存储在 /boot/solaris/bootenv.rc 文件或 menu.lst 文件中。使用 eeprom 命令对引导参数进行的更改会在每次系统重新引导后持续有效,并且会在软件升级期间得以保留。有关更多信息,请参见 eeprom(1M) 手册页。
注意 -如果直接编辑 menu.lst 文件,则稍后无法使用 eeprom 命令更改某些引导参数(boot-file、boot-arguments 和 console)。
在引导时编辑 GRUB 菜单
通过在引导时修改缺省内核用法进行的更改会覆盖使用 eeprom 命令设置的选项。但是,这些更改仅在下次引导系统之前保持生效。有关更多信息,请参见 kernel(1M) 手册页。
编辑 GRUB 配置文件 (menu.lst)
SPARC: 如何确定缺省引导设备使系统进入 ok PROM 提示符下。
确定缺省引导设备。ok printenv boot-deviceboot-device
标识用于设置引导设备的参数。
有关更多信息,请参见 printenv(1B) 手册页。
将会以类似如下的格式显示缺省 boot-device:boot-device = /pci@1f,4000/scsi@3/disk@1,0:a
如果 boot-device 参数指定网络引导设备,则输出将类似如下: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: 如何使用引导 PROM 更改缺省引导设备
开始之前
将缺省引导设备更改为某个其他设备之前,可能需要标识系统上的设备。有关标识系统上设备的信息,请参见《在 SPARC 平台上引导和关闭 Oracle Solaris》中的"如何标识系统中的设备"。使系统进入 ok PROM 提示符下。# init 0
更改 boot-device 参数的值。ok setenv boot-device device[n]device[n]
标识 boot-device 值,例如 disk 或 network。可以将 n 指定为磁盘编号。请使用 probe 命令之一,帮助您标识磁盘编号。
确认缺省引导设备已更改。ok printenv boot-device
保存新 boot-device 值。ok reset-all
新 boot-device 值将被写入 PROM。
示例 4-6 SPARC: 使用引导 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.
.
.
.
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
.
.
.
Boot device: net File and args:
pluto console login:
另请参见
x86: 如何使用 eeprom 命令修改引导参数成为 root 角色。
更改指定的参数。# eeprom parameter=new-value
确认已设置新的参数。# eeprom parameter
输出应该显示指定参数的新的 eeprom 值。
示例 4-7 使用 eeprom 命令设置 auto-boot 参数
以下示例显示如何将 auto-boot 引导参数设置为 true。# eeprom auto-boot?=true
当 eeprom 命令在用户模式下运行时,结尾具有问号 (?) 的任何参数都需要括在双引号中,以防止 shell 解释该问号。在问号前加一个转义符 (\) 也可以防止 shell 解释问号。例如:# eeprom "auto-boot?"=true
x86: 如何在引导时修改引导参数
通过在引导时编辑 GRUB 菜单修改缺省内核用法时,所做的更改不会在系统重新引导后持续有效。当您下次引导系统时,将恢复缺省引导参数。
重新引导系统。
引导序列开始时,将显示 GRUB 主菜单。
使用方向键选择引导项进行编辑。
键入 e 以访问 GRUB 编辑菜单。
在菜单中选择 kernel$ 行。
键入 e 以向该行中添加引导参数。
键入任何附加的引导参数。
按回车键以保存您的更改,并返回到上一级菜单。
注 -按 Esc 键返回 GRUB 主菜单,而不保存所做更改。
要引导系统,请键入 b。
您所做的更改将在引导系统时生效。
安装后将 Linux 项添加到 GRUB 菜单中
如果您通过首先将 Linux 安装到一个分区,然后将 Oracle Solaris 安装到另一个分区的方法设置引导环境,需要遵循某些说明以确保新安装生成的 GRUB 菜单信息不会删除先前安装生成的 GRUB 菜单信息。有关说明,请参见《在 x86 平台上引导和关闭 Oracle Solaris》中的"如何在安装 Oracle Solaris 之后将 Linux 项添加到 GRUB 菜单"。
注 -一些 Linux 分发版现已在 GRUB2 上运行,例如 Ubuntu 和 Mint Linux。您无法在 Oracle Solaris 11
中包括的 GRUB 版本上引导 GRUB2 分区。在这些情况下,建议使用备用解决方法。