- 论坛徽章:
- 0
|
第二章 OpenBoot PROM
l OpenBoot PROM介绍
所有Sun机器都一个用于基本硬件测试和初始化的固件,还有一个提供多种重要功能的用户程序。
1. 基本元素
Sun系统的基本硬件元素包括:
Boot PROM芯片,它永久的固定在主板中。
非易失性随机访问内存(non-volatile random access memory (NVRAM) )芯片,包含主机的基本信息。
2. Boot PROM功能
boot PROM有以下功能:
加电自检(Power-on self-tests (POST))
系统重起始开始执行。
检测基本CPU板
因机器型号不同而不同。
设备驱动
有一些小型设备驱动程序,使得启动的初始化过程中可以与不同的外围设备相通讯
用户操作界面
3. NVRAM 内容
除了永久性存在地以太网地址、主机ID、时钟外,还保存着可以修改的系统的配置参数。
Basic Boot PROM Commands
ok banner
ok boot
ok help
ok printenv
ok setenv
ok set-defaults
ok probe-scsi
ok probe-scsi-all
ok probe-ide
ok reset
banner命令和参数
banner命令列出系统得一些参数,比如有那些模块,内存,处理器,以太网卡地址,hostid等信息。并且你可以通过banner命令获得PROM得版本号。
ok banner
Sun UltraSPARC 60 UPA/PCI (2 X UltraSPARC-II 296MHz), Keyboard Present
OpenBoot 3.11, 256 MB memory installed, Serial #3159808.
Ethernet address 8:0:22:1a:e7:3f, Host ID: 72303700.
ok
boot 命令和参数
您可以在boot命令后键入一个或多个参数。这些参数传递改操作系统内核,将影响整个启动过程。
命令格式
ok boot [device_name] - [options]
参数
a 交互式启动系统。提示输入根设备和交换设备以及一些重要的系统文件
r 启动时系统将重新查找所有的设备,在/devices和/dev目录下重新生成文 件,更新/etc/path_to_inst文件。
s 系统启动后停留在S运行级别。可以用来系统错误排除。
v 详细地显示出系统的启动信息。有时可以用来系统的错误排除。
printenv 命令
printenv命令显示NVRAM的参数以及参数的缺省值。
查看缺省启动设备
您可以使用printenv显示缺省启动设备。
ok printenv
Parameter Name Value Default Value
tpe-link-test? True true
output-device ttya screen
input-device ttya keyboard
sbus-probe-list f0123 f0123
keyboard-click? False false
diag-file
diag-device net net
boot-file
boot-device disk disk
auto-boot? true true
More [,,q] ? q
您可以在系统的输出中查看缺省启动设备,参数是boot-device。您也可以输入printenv boot-device,这样只显示启动设备的值。
重新定义PROM Boot值
使用setenv命令可以重新定义PROM的值 。下面的例子中把auto-boot? 变为 false,然后reset命令使系统重新启动,使变化生效。
ok printenv auto-boot?
auto-boot?true true
ok
ok setenv auto-boot? false
auto-boot? = false
ok reset
重置缺省值
使用set-defaults 命令将所有的参数重新设置为缺省的值。
ok set-defaults
______________________________________________________________________
注意 –set-defaults命令只对有缺省值的参数生效。
______________________________________________________________________
影响系统启动和自检的按键有:
stop
如果在系统加电自检时按下Stop键,就取消POST(加电自检)诊断,然后停留在OK状态。
Stop+d
在系统自检时同时按下stop和d键,系统将自动转到诊断模式,诊断模式下系统将更完全地进行自检。
Stop+n
如果由于NVRAM的设置不正确而导致系统无法正确启动时,可以在系统加电自检时同时按下stop和n键。它的作用是将NVRAM的参数值设为默认值。
Stop+a
同时按下stop和a键将中断操作系统的运行,退到OK状态。
警告:尽量不要在操作系统运行时按stop+a,这将导致操作系统停止并且导致数据的丢失。在万不得以的时候,在按下stop+a后,键入sync命令用以将内存的数据同步到硬盘中。
l 探测系统总线
将外围设备(如光驱、硬盘)与主板连接在一起的I/O总线有SCSI(small computer system interface)总线和IDE (integrated drive electronics)总线。
在OpenBoot 3.x系统中使用probe-命令
在OpenBoot 3.x的系统中,使用probe-命令时,您会看到一个警告。如果您在操作系统运行状态下,用stop-a将系统强行暂停,或使用halt退出操作系统。这样的状态下使用probe-命令会造成机器挂起。因此,您必须先运行reset-all命令。
请先设置auto-boot?为false后再运行reset-all,系统将重新自检,停留在OK状态下,然后可以运行这个命令。
显示连接在SCSI总线上的设备
probe-scsi命令将鉴别连接在SCSI控制器上的设备。
ok probe-scsi
Target 3
Unit 0 Disk SEAGATE ST1480 SUN0424626600190016
Copyright (c)
All Rights Reserved
Target 6
Unit 0 Removable Read Only device SONY CD-ROM
ok probe-scsi-all
显示连接在PCI总线上的IDE设备
ok probe-ide
Device 0 ( Primary Master )
ATA Model : ST 34342A
Device 1 ( Primary Slave )
Not Present
Device 2 ( Secondary Master )
removable ATAPI Model : CDR-8240B
Device 3 ( Secondary Slave )
Removable ATAPI Model yyyyyyyyyyyyyyy
可以使用devalias命令查看设备别名的物理地址,这样就可以知道启动设备的物理设备了。
ok devalias
screen /SUNW,ffb@1e,0
mydisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
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:a
ttya /pci@1f,0/pci@1,1/ebus@1/se:b
keyboard! /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8
keyboard /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8
mouse /pci@1f,0/pci@1,1/ebus@1/su@14,3062f8
设备别名在左列。设备物理地址在右列。
如果操作系统挂起了(没有响应),并且您也不能远程登录,那您没有别的选择了,只有强行中断操作系统。
l 中断挂起的系统
如果系统挂起了,可以尝试下列步骤:
1.用Stop-a中断操作系统。如果成功,系统会停留在PROM状态。如果是使用字符终端作为系统控制台,则按Break键。
2. 用sync命令将内存的内容同步到磁盘,减少数据的丢失。结束后系统会自动重起。
在ok提示符下键入sync命令。
ok sync
注意 – 您也可以用Stop-a强行中断操作系统,然后键入go恢复操作系统运行。不建议使用此功能
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/6482/showart_111284.html |
|