Solaris培訓第二章:OpenBoot PROM(轉)

amyz發表於2007-08-10
Solaris培訓第二章:OpenBoot PROM(轉)[@more@]

  OpenBoot PROM介紹

  所有Sun機器都一個用於基本硬體測試和初始化的韌體,還有一個提供多種重要功能的使用者程式。

  基本元素

  Sun系統的基本硬體元素包括:

  Boot PROM晶片,它永久的固定在主機板中。

  非易失性隨機訪問記憶體(non-volatile random access memory (NVRAM) )晶片,包含主機的基本資訊。

  Boot PROM內容

  boot PROM有以下功能:

  加點自檢(Power-on self-tests (POST))

  系統重起始開始執行。

  檢測基本CPU板

  因機器型號不同而不同。

  裝置驅動

  有一些小型裝置驅動程式,使得啟動的初始化過程中可以與不同的外圍裝置相通訊

  使用者操作介面

  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

  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 命令和引數

  您可以在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命令用以將記憶體的資料同步到硬碟中。

  探測系統匯流排

  將外圍裝置(如光碟機、硬碟)與主機板連線在一起的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

  裝置別名在左列。裝置實體地址在右列。

  如果作業系統掛起了(沒有響應),並且您也不能遠端登入,那您沒有別的選擇了,只有強行中斷作業系統。

  中斷掛起的系統

  如果系統掛起了,可以嘗試下列步驟:

  1.用Stop-a中斷作業系統。如果成功,系統會停留在PROM狀態。如果是使用字元終端作為系統控制檯,則按Break鍵。

  2. 用sync命令將記憶體的內容同步到磁碟,減少資料的丟失。結束後系統會自動重起。

  在ok提示符下鍵入sync命令。

  ok sync

  注意 – 您也可以用Stop-a強行中斷作業系統,然後鍵入go恢復作業系統執行。不建議使用此功能。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-941571/,如需轉載,請註明出處,否則將追究法律責任。

相關文章