GRUB 和 Solaris 10 1/06 操作系统常见问题:用于 x86 平台的新引导加载器2005 年 12 月
问: 什么是 GRUB? 答:
对于 x86 平台上的 Solaris 操作系统,新的引导加载器基于流行的开源 GNU GRUB(Grand Unified Bootloader,Grand
统一引导加载器)项目。引导加载器是最初开机时运行的软件程序。它负责将操作系统内核加载到内存中,然后将控制权交给该内核。
问: GRUB 也是 SPARC 平台上的 Solaris 操作系统的新引导加载器吗? 答:
不是,GRUB 仅用于 x86 系统上的 Solaris 操作系统(从 Solaris 10 1/06 发行版开始)。(在 Solaris 10 1/06
操作系统正式版发行之前,
OpenSolaris 项目或
Solaris Express
项目中将提供新引导加载器。)
问: 我必须将 x86 计算机升级到 Solaris 10 1/06 操作系统才能获取 GRUB 吗? 答:
升级是一种获取新引导加载器的机制。另一种方法是安装 Solaris 10 安全修补程序,其中包含内核修补程序 118844-21(或更高版本)。
问: 如何使系统始终出现在 Solaris 操作系统的 GRUB 菜单上? 答:
通过运行以下命令,在主引导区中安装 Solaris GRUB
stage1:
有关 "stage1" 和 "stage2" 参数的详细信息,请参见
问: 我希望系统始终保持在 GRUB 菜单上,而不自动进行引导。应该如何操作? 答:
在
/boot/grub/menu.lst 中设置
timeout=-1。问: 我可以使用 GRUB 引导旧 Solaris 发行版吗? 答:
不能直接使用。早期的 Solaris 内核不符合多重引导规范,因而 GRUB 不能直接加载这些内核。但是,可以在
/boot/grub/menu.lst 中将以下行添加到 GRUB 菜单上以进行链式加载:
必须使用
问: 我已在
答:
fdisk 分区上安装了新的 Solaris 发行版,并且旧 Solaris 发行版位于同一分区的另一个分片上。如何引导旧发行版?确保旧 Solaris 版本的根
fs 位于带有根标记的分片上。GRUB 的 Solaris 引导分片必须具有根以外的任何标记。这不是安装后的缺省设置;用户必须使用
format(1M) 编辑分片标记。
如果旧 Solaris 发行版具有引导分区,请将其链式加载到该引导分区。 如果没有,请在分片的第一个扇区中安装
dd if=/usr/platform/i86pc/lib/fs/ufs/pboot of=/dev/rdsk/c0d0s0 bs=512 count=1
然后,链式加载该分片:
title Solaris 03/05
问: 我编辑了
答:
/boot/grub/menu.lst,但 GRUB 屏幕上并未显示这些更改。系统很可能是从 Solaris 引导分区进行引导的。在这种情况下,将在
/stubboot 中挂载引导分区。活动 GRUB 菜单为
/stubboot/boot/grub/menu.lst。问: 如何设置
答:
netinstall 服务器以便为多个 Solaris 映像提供服务?请参见文章“GRUB 和 Solaris 10 1/06 操作系统:用于 x86 平台的新引导加载器”中的附录 B:
http://www.sun.com/bigadmin/features/articles/grub_boot_solaris.html。<
/div>
问: 我能否使用
答:
pxelinux 加载 Solaris 操作系统?您可以使用
pxelinux 加载
pxegrub,然后再加载 Solaris 操作系统。问: 在没有 PXE/DHCP 服务器的情况下,能否从网络进行引导? 答:
可以,但只能使用某种本地介质(软盘或 CD-ROM)进行引导。您可以创建一个 GRUB 软盘,并通过 GRUB 命令
rarp 或
ifconfig 配置网络,然后通过
tftp 下载
multiboot 和
boot_archive。问: 引导新的 Solaris 发行版时,如何应用驱动程序更新? 答:
引导
miniroot 时,请从 Install(安装)菜单中选择 5。出现提示时,插入包含该软件的软盘或 CD-ROM。CD-ROM
上的软件布局必须采用为 ITU 软盘定义的相同目录分层结构。问: prtconf -pv 输出没有提供我以前获取的信息。应该怎么办?目前,由内核负责设备枚举。应通过
prtconf -v 获取所有设备信息。问: 我有一台旧计算机,但没有 ACPI 表。我仍然可以引导 Solaris 操作系统吗? 答:
可以,如果找不到 ACPI 表,引导代码会自动使用一组缺省接口,它将配置标准 PS/2 键盘/鼠标和串行/并行端口。您可以添加引导选项
-B acpi-user-options=2 以手动禁用 ACPI(另请参见
eeprom(1M))。问: 我能否自定义故障安全归档,并将其作为可移植恢复映像放在 USB 存储棒中? 答:
当前的故障安全归档是
miniroot,采用的是 gzip 压缩的 UFS 格式。可以将其作为
lofi 设备进行挂载,并使用文件系统操作对其进行操作。您可以将驱动程序添加到归档中,以获取增强的硬件支持。通常,不支持添加应用程序软件包,因为miniroot 是一个非常小的环境,仅用于执行操作系统安装和升级操作。问: 如何将 GRUB 控制台重定向到串行线路? 答:
在 Solaris 操作系统中,使用
eeprom console=ttya(或
ttyb)重定向操作系统控制台。如果可以重定向 BIOS 控制台,请对其进行设置。如果无法重定向 BIOS 控制台,可通过在
/boot/grub/menu.lst 中添加以下行,将 GRUB 输出重定向到
ttya。
serial --unit=0 --speed=9600
建议不要同时设置 BIOS 控制台重定向和 GRUB 控制台重定向。它们可能会相互干扰。 问: 在进入故障安全模式并修复配置文件后,不知道什么原因就损坏了引导归档。无论重新引导到故障安全模式多少次,都无法使其重新生成归档以使我能够进行引导。<
/div>答:
引导到故障安全模式,对出现的 'updated archives'(更新的归档)问题回答 'yes'(是)后,将会在
/a 中挂载基于实际磁盘的根文件系统。运行以下命令:
bootadm update-archive -f -R /a。问: GRUB 通常安装在 Solaris 分片中。能否将其安装在主引导记录 (Master Boot Record, MBR) 中? 答:
如果将 GRUB 安装到主引导目录中 (
installgrub -m <stage1> <stage2> /dev/rdsk/<slice>),系
统将从 GRUB 中启动,而不论是否激活了 Solaris 分区。
但是,如果安装的第二个操作系统覆盖了 MBR,则无法恢复 Solaris 版本的 GRUB,除非从安装 DVD 中引导并再次运行
因此,从恢复的角度看,如果将 Solaris 10 1/06 版本的 GRUB 保留在 Solaris 分区中,情况可能会更好一些。 问: 我在系统中安装了 Solaris 操作系统,但无法引导它。 答:
确保将 BIOS 引导磁盘设置为安装了 Solaris 操作系统的磁盘,并且 Solaris 分区处于活动状态。
问: 是否应该在安装时创建 Solaris 引导分区? 答:
不必。从 Solaris 10 1/06 开始,全新安装不会创建引导分区,也不会重新使用现有的引导分区。从以前的 Solaris 发行版进行升级时,将
保留引导分区并将其挂载到
/stubboot 中。 |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||