OpenBoot PROM介紹
所有Sun機(jī)器都一個(gè)用于基本硬件測(cè)試和初始化的固件,還有一個(gè)提供多種重要功能的用戶程序。
基本元素
Sun系統(tǒng)的基本硬件元素包括:
Boot PROM芯片,它永久的固定在主板中。
非易失性隨機(jī)訪問(wèn)內(nèi)存(non-volatile random access memory (NVRAM) )芯片,包含主機(jī)的基本信息。
Boot PROM內(nèi)容
boot PROM有以下功能:
加點(diǎn)自檢(Power-on self-tests (POST))
系統(tǒng)重起始開(kāi)始執(zhí)行。
檢測(cè)基本CPU板
因機(jī)器型號(hào)不同而不同。
設(shè)備驅(qū)動(dòng)
有一些小型設(shè)備驅(qū)動(dòng)程序,使得啟動(dòng)的初始化過(guò)程中可以與不同的外圍設(shè)備相通訊
用戶操作界面
NVRAM 內(nèi)容
除了永久性存在地以太網(wǎng)地址、主機(jī)ID、時(shí)鐘外,還保存著可以修改的系統(tǒng)的配置參數(shù)。
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
The Open Boot banner Command
The banner command lists several pieces of useful information about the system such as model,
amount of memory, and hostid. You can also use the banner command to identify your system’s PROM version number. Three boot PROM levels are discussed in this module.
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 命令和參數(shù)
您可以在boot命令后鍵入一個(gè)或多個(gè)參數(shù)。這些參數(shù)傳遞改操作系統(tǒng)內(nèi)核,將影響整個(gè)啟動(dòng)過(guò)程。
命令格式
ok boot [device_name] - [options]
參數(shù)
a 交互式啟動(dòng)系統(tǒng)。提示輸入根設(shè)備和交換設(shè)備以及一些重要的系統(tǒng)文件
r 啟動(dòng)時(shí)系統(tǒng)將重新查找所有的設(shè)備,在/devices和/dev目錄下重新生成文 件,更新/etc/path_to_inst文件。
s 系統(tǒng)啟動(dòng)后停留在S運(yùn)行級(jí)別??梢杂脕?lái)系統(tǒng)錯(cuò)誤排除。
v 詳細(xì)地顯示出系統(tǒng)的啟動(dòng)信息。有時(shí)可以用來(lái)系統(tǒng)的錯(cuò)誤排除。
printenv 命令
printenv命令顯示NVRAM的參數(shù)以及參數(shù)的缺省值。
查看缺省啟動(dòng)設(shè)備
您可以使用printenv顯示缺省啟動(dòng)設(shè)備。
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
您可以在系統(tǒng)的輸出中查看缺省啟動(dòng)設(shè)備,參數(shù)是boot-device。您也可以輸入printenv boot-device,這樣只顯示啟動(dòng)設(shè)備的值。
重新定義PROM Boot值
使用setenv命令可以重新定義PROM的值 。下面的例子中把a(bǔ)uto-boot? 變?yōu)?nbsp;false,然后reset命令使系統(tǒng)重新啟動(dòng),使變化生效。
ok printenv auto-boot?
auto-boot?true true
ok
ok setenv auto-boot? false
auto-boot? = false
ok reset
重置缺省值
使用set-defaults 命令將所有的參數(shù)重新設(shè)置為缺省的值。
ok set-defaults
______________________________________________________________________
注意 –set-defaults命令只對(duì)有缺省值的參數(shù)生效。
______________________________________________________________________
影響系統(tǒng)啟動(dòng)和自檢的按鍵有:
stop
如果在系統(tǒng)加電自檢時(shí)按下Stop鍵,就取消POST(加電自檢)診斷,然后停留在OK狀態(tài)。
Stop+d
在系統(tǒng)自檢時(shí)同時(shí)按下stop和d鍵,系統(tǒng)將自動(dòng)轉(zhuǎn)到診斷模式,診斷模式下系統(tǒng)將更完全地進(jìn)行自檢。
Stop+n
如果由于NVRAM的設(shè)置不正確而導(dǎo)致系統(tǒng)無(wú)法正確啟動(dòng)時(shí),可以在系統(tǒng)加電自檢時(shí)同時(shí)按下stop和n鍵。它的作用是將NVRAM的參數(shù)值設(shè)為默認(rèn)值。
Stop+a
同時(shí)按下stop和a鍵將中斷操作系統(tǒng)的運(yùn)行,退到OK狀態(tài)。
警告:盡量不要在操作系統(tǒng)運(yùn)行時(shí)按stop+a,這將導(dǎo)致操作系統(tǒng)停止并且導(dǎo)致數(shù)據(jù)的丟失。在萬(wàn)不得以的時(shí)候,在按下stop+a后,鍵入sync命令用以將內(nèi)存的數(shù)據(jù)同步到硬盤(pán)中。
探測(cè)系統(tǒng)總線
將外圍設(shè)備(如光驅(qū)、硬盤(pán))與主板連接在一起的I/O總線有SCSI(small computer system interface)總線和IDE (integrated drive electronics)總線。
在OpenBoot 3.x系統(tǒng)中使用probe-命令
在OpenBoot 3.x的系統(tǒng)中,使用probe-命令時(shí),您會(huì)看到一個(gè)警告。如果您在操作系統(tǒng)運(yùn)行狀態(tài)下,用stop-a將系統(tǒng)強(qiáng)行暫停,或使用halt退出操作系統(tǒng)。這樣的狀態(tài)下使用probe-命令會(huì)造成機(jī)器掛起。因此,您必須先運(yùn)行reset-all命令。
請(qǐng)先設(shè)置auto-boot?為false后再運(yùn)行reset-all,系統(tǒng)將重新自檢,停留在OK狀態(tài)下,然后可以運(yùn)行這個(gè)命令。
顯示連接在SCSI總線上的設(shè)備
probe-scsi命令將鑒別連接在SCSI控制器上的設(shè)備。
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設(shè)備
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命令查看設(shè)備別名的物理地址,這樣就可以知道啟動(dòng)設(shè)備的物理設(shè)備了。
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
設(shè)備別名在左列。設(shè)備物理地址在右列。
如果操作系統(tǒng)掛起了(沒(méi)有響應(yīng)),并且您也不能遠(yuǎn)程登錄,那您沒(méi)有別的選擇了,只有強(qiáng)行中斷操作系統(tǒng)。
中斷掛起的系統(tǒng)
如果系統(tǒng)掛起了,可以嘗試下列步驟:
1.用Stop-a中斷操作系統(tǒng)。如果成功,系統(tǒng)會(huì)停留在PROM狀態(tài)。如果是使用字符終端作為系統(tǒng)控制臺(tái),則按Break鍵。
2. 用sync命令將內(nèi)存的內(nèi)容同步到磁盤(pán),減少數(shù)據(jù)的丟失。結(jié)束后系統(tǒng)會(huì)自動(dòng)重起。
在ok提示符下鍵入sync命令。
ok sync
注意 – 您也可以用Stop-a強(qiáng)行中斷操作系統(tǒng),然后鍵入go恢復(fù)操作系統(tǒng)運(yùn)行。不建議使用此功能。