为避免系统无法运行,应从内核副本和关联的二进制文件进行引导,而不是从缺省内核进行引导。
在 /platform/* 中生成驱动程序的副本。
# cp -r /platform/`uname -i`/kernel /platform/`uname -i`/kernel.test |
将驱动程序模块放在 /platform/`uname -i`/kernel.test/drv 中。
引导替代内核,而非缺省内核。
创建并存储替代内核后,可通过许多方法来引导此内核。
可通过重新引导来引导替代内核:
# reboot -- kernel.test/unix |
在基于 SPARC 的系统中,还可以从 PROM 进行引导:
ok boot kernel.test/sparcv9/unix |
要使用 kmdb 调试程序进行引导,请按模块调试程序入门中所述使用 -k 选项。
在基于 x86 的系统中,当引导过程中显示 Select (b)oot or (i)nterpreter: 消息时,请键入以下命令:
boot kernel.test/unix |
以下示例说明如何使用替代内核进行引导。
ok boot kernel.test/sparcv9/unix Rebooting with command: boot kernel.test/sparcv9/unix Boot device: /sbus@1f,0/espdma@e,8400000/esp@e,8800000/sd@0,0:a File and \ args: kernel.test/sparcv9/unix |
也可以使用询问功能 (-a) 选项进行引导来更改模块路径。使用此选项会生成用于配置引导方法的一系列提示。
ok boot -a Rebooting with command: boot -a Boot device: /sbus@1f,0/espdma@e,8400000/esp@e,8800000/sd@0,0:a File and \ args: -a Enter filename [kernel/sparcv9/unix]: kernel.test/sparcv9/unix Enter default directory for modules [/platform/sun4u/kernel.test /kernel /usr/kernel]: <CR> Name of system file [etc/system]: <CR> SunOS Release 5.10 Version Generic 64-bit Copyright 1983-2002 Sun Microsystems, Inc. All rights reserved. root filesystem type [ufs]: <CR> Enter physical name of root device [/sbus@1f,0/espdma@e,8400000/esp@e,8800000/sd@0,0:a]: <CR> |