SA239翻譯第八章執行PROM命令
SA239翻譯第八章執行PROM命令
完成本部分的學習後,管理員可以執行如下任務:
完成本部分的學習後,管理員可以執行如下任務:
·瞭解boot PROM(programmable read-only memory)的基礎知識
·使用基本的boot PROM命令
·標識系統啟動裝置
·建立刪除定製的裝置別名
·在shell中檢視與更改NVRAM(novolatile random access memory)
·中止未響應的系統
第一節 boot PROM基礎介紹
所有的Sun系統都有常駐的boot PROM韌體,提供啟動之前的基本硬體測試與初始化。boot PROM還支援從不同的裝置啟動。此外,還具有一個提供許多重要功能的使用者介面。
Sun boot PROM可訪問一個標準的普通裝置驅動程式集。系統使用這些驅動程式訪問並控制匯流排和啟動裝置,以正常啟動。
所有版本的Openboot結構都支援第三方的板卡標識板卡自身,並裝載其內建的裝置驅動程式。在系統啟動過程中硬體配置階段,OpenBoot PROM請求每個裝置宣告自己的型別,並裝載其內建的驅動程式。
圖8-2顯示了標識過程。
圖8-2 第三方裝置標識過程
OpenBoot體系結構標準的目的
IEEE OpenBoot架構標準的目的是用於提供如下功能:
·測試並初始化系統硬體
·判定系統的硬體配置
·啟動作業系統環境
·為配置、測試與除錯提供互動式的介面
·支援使用第三方的裝置
Boot PROM
每個Sun系統都有一個boot PROM晶片。容量1M的晶片通常與CPU位於同一塊板上。Boot PROM晶片在老式的系統上常位於一個可插拔的介面上。對於3.x版本的PROM,該晶片被固化在主系統板上。
Ultra工作站使用可重程式設計的Boot PROM,稱為快閃記憶體PROM(FPROM)。FPROM支援使用軟體將新的啟動程式資料載入入PROM中,而不是用更換晶片的方式進行功能升級。這些升級程式以CDROM方式發行。
桌面系統中有一個防寫跳線,在寫PROM之前必須更改跳線。跳線預設的位置是防寫。參考Refer to the Flash Programming Manual for Ultra Desktop Systems手冊, part number 802-3233-17,檢視系統的路線位置。
注意:很多系統的跳線位於安裝的幀緩衝區或其它可移動的卡下方。在移除更換這些卡時要小心。
Boot PROM的主要功能是測試系統硬體,啟動作業系統環境。Boot PROM韌體被稱為monitor程式。
Boot PROM韌體在作業系統啟動、核心可用之前控制了系統的執行。Boot PROM還給使用者提供了使用者介面與韌體工具命令,也稱為FORTH命令集。命令包括啟動命令,診斷命令,及修改預設配置的命令。
注意:Boot PROM不能識別Solaris Operating environment(Solaris OE)檔案系統或檔案。它主要負責處理硬體裝置
Sun Boot PROM發展已經經歷了5代,每一代都有其基本的版本號,如下列表:
版本 描述
1.x SPARC系統上的第一代Boot PROM
2.x 第一代的OpenBoot PROM
3.x 使用flash更新特性的OpenBoot PROM。可以不用更換Boot PROM晶片而更新3.x韌體。這一代被用於Sun UltraSPARC產品線
4.x 支援64位UltraSPARC III 處理器的OpenBoot PROM
5.x 用於Sun Enterprise 3500,4500,5500及6500伺服器
執行如下命令檢視系統上執行的OpenBoot PROM版本:
# /usr/platform/‘uname -m‘/sbin/prtdiag -v
NVRAM
每個Sun系統中另一個重要的硬體設施是NVRAM晶片。該可移除的晶片通常位於主系統板上。
NVRAM模組包含EEPROM (electronically erasable programmable read-only memory)。EEPROM儲存了使用者在預設的Boot PROM引數設定集中更改的啟動引數。這種機制讓使用者可以在特定環境下配置系統以特定的方式執行,具有一定程度的靈活性。NVRAM模組內部有一塊鋰電池,為NVRAM和時鐘供電。
NVRAM包含可編輯區及不可編輯區。不可編輯區包括如下內容:
·乙太網mac地址,如8:0:20:5d:6f:9e
·系統host ID值,如805d6f9e
可編輯區包括如下內容:
·time-of-day(TOD)時鐘值
·描述系統執行引數的配置資料
·一個診斷模式開關,啟用或禁用加電自檢(POST)
·預設啟動裝置的裝置名與路徑
·啟動過程中使用的定製程式位置
注意:注意保持NVRAM晶片,因為它包含host ID。很多需要license的軟體包都是基於系統的host ID的。NVRAM晶片上有一個黃色的標籤,上面有一個條形碼。如果晶片失效,Sun可以根據該條形碼提供替換晶片。替換晶片有與原晶片相同的host ID與乙太網MAC地址。可以將替換晶片插入系統上原來晶片所在的位置進行替換。
圖8-3顯示了Boot PROM與NVRAM的基本元件。
圖8-3 PROM的基本結構
POST
系統加電時,會執行一個低階的POST。低階POST的程式碼被儲存在Boot PROM中,
它被用於檢測系統硬體的最基本的功能。
成功完成低階POST階段以後,Boot PROM韌體接管控制並執行如下的初始化過程:
·探測記憶體,然後探測CPU
·探測匯流排裝置,解析其驅動程式,並建立裝置樹
·安裝終端
在Boot PROM初始化系統之後,Boot PROM與NVRAM中儲存的系統檢測引數決定是否和如何啟動作業系統環境。
控制POST階段
POST執行的第一個檢測是檢測是否有鍵盤連線到系統及是否按下了Stop鍵選項。
注意:可以使用Sun鍵盤控制POST階段。
Stop鍵盤位於鍵盤的左側。將Stop鍵與其它鍵一同按下,啟用不同的除錯模式。Stop組合鍵影響OpenBoot PROM,定義系統加電時POST如何執行。下面是Stop鍵的組合:
·Stop-D 系統加電時按下Stop鍵和D鍵,韌體自動切換到診斷模式。此模式將在系統硬體上執行extensive(廣泛的)POST診斷。OpenBoot PROM變數diag-switch?被設定為true。
圖8-4顯示了diag-switch?變數的作用
圖8-4 加電測試
注意:Stop-D組合在串列埠終端上不可用
·Stop-N組合鍵 系統加電時同時按下Stop鍵和N鍵,將NVRAM引數設為預設值。當鍵盤上的LED燈開始閃爍時,可以放開鍵,然後系統就繼續啟動。
不正確的NVRAM設定可能會讓系統啟動失敗。例如,在快閃記憶體PROM下載時,如這時掉電,NVRAM的一些內容可能就會不可用。
如果系統不能啟動,懷疑是因為NVRAM引數未正確設定,引數可以被很容易地改變為預設值。
·Stop-A組合鍵 按下Stop鍵與A鍵會立即中斷任何當前正在執行的程式,並回到OpenBoot PROM的命令列模式下。系統顯示ok提示符,表示接受輸入OpenBoot PROM命令。
注意:Stop-A組合鍵,是到ok提示符下的方法之一,但不推薦,除非別無選擇。Stop-A鍵可能會導致Solaris OE檔案系統崩潰,這將很難修復。
禁用Abort組合鍵
系統管理員可能會想禁用abort組合鍵(即Stop-A),以防止可能的檔案系統崩潰,使系統更安全(防止別人使用Stop –A 組合鍵進入PROM提示符)。
編輯/etc/default/kbd檔案禁用abort組合鍵。將語句KEYBOARD_ABORT =disable取消註釋。將該行前的註釋符號刪除,儲存檔案,並執行命令kbd -i。完成操作後,系統將只允許在啟動過程中使用Stop-A組合鍵。
也可將系統配置更改,把abort組合鍵改為其它替代的組合。檢視kbd命令的man手冊,獲取更多資訊。
輸出POST到串列埠
系統管理員可以使用序列線連線到系統的串列埠上,獲取POST輸出的更多資訊。
當系統加電時,POST查詢鍵盤,如果系統中沒有鍵盤,POST會將系統輸出轉向序列口A。
POST在當系統的PROM引數diag-switch?設定為true時,會以診斷模式執行,執行更多的檢測。
確保使用正確型別的null modem電纜連線到串列埠A上。
一些系統需要特殊的適配電纜。將電纜的另一頭連線到ASCII終端的modem埠上,如圖8-5所示。
下面的例子是一臺Sun Blade 1000工作站的POST輸出:
Partial Post Output Listing
@(#) 4.0 Version 29 created 2000/07/12 16:46
Clearing TLBs Done
Reset: 0000.0000.0000.0010 SPOR
Loading Configuration
Membase: 0000.0000.0000.0000
MemSize: 0000.0000.2000.0000
Init CPU arrays Done
Init E$ tags Done
Setup TLB Done
MMUs ON
Block Scrubbing Done
Copy Done
PC = 0000.07ff.f000.3138
Decompressing Done
Size = 0000.0000.0006.e3b0
ttya initialized
Start Reason: Soft Reset
System Reset: (SPOR)
Probing gptwo at 0,0 SUNW,UltraSPARC-III (750 MHz @ 5:1, 8 MB)
memory-controller
Probing gptwo at 1,0 Nothing there
Probing gptwo at 8,0 pci pci upa ppm
Loading Support Packages: kbd-translator
Loading onboard drivers: ebus flashprom bbc ppm i2c dimm-fru dimm-fru
dimm-fru dimm-fru dimm-fru dimm-fru dimm-fru dimm-fru nvram idprom
i2c cpu-fru temperature fan-control card-reader motherboard-fru
Memory Configuration:
Segment @ Base: 0 Size: 512 MB (2-Way)
Probing ,480000 Device 0,0 Nothing there
Probing ,480000 Device 1,0 Nothing there
Probing ,600000 Device 4 SUNW,qlc fp disk
Probing ,600000 Device 1 Nothing there
Probing ,700000 Device 5 network firewire usb
dev-descrip
next-add
node made
Probing ,700000 Device 6 scsi disk tape scsi disk tape
Probing ,700000 Device 1 Nothing there
Probing ,700000 Device 2 Nothing there
(UltraSPARC-III) , Keyboard Present
OpenBoot 4.0, 512 MB memory installed, Serial #12134217.
Ethernet address 8:0:20:b9:27:49, Host ID: 80b92749.
第二節 使用基本的Boot PROM命令
Boot PROM提供使用者介面,輸入OpenBoot命令。
注意:ok提示符指示Solaris OE當前未執行。
表8-1列出了常用的ok提示符命令:
表8-1 ok提示符下的常用命令:
命令 描述
banner 顯示加電banner
boot 啟動系統
help 顯示主要的幫助目錄
words 顯示字典中的FORTH單詞
sifting text 顯示FORTH命令中包含text的命令
printenv 顯示所有引數的當前值與預設值
setenv 將指定的NVRAM引數設為指定值
reset-all 重設整個系統,類似於power cycle(加電迴圈?重啟)
set-defaults 將所有的引數值設為出廠設定
probe-ide 檢測IDE匯流排上的所有裝置
probe-scsi 檢測SCSI匯流排上的裝置
probe-scsi-all 檢測所有SCSI匯流排上的裝置
probe-fcal-all 檢測所有光纖通道環上的裝置
.version 顯示Boot PROM的日期與版本
probe-pci 檢測指定PCI匯流排上的所有裝置
probe-pci-slot 檢測指定PCI匯流排上指定PCI插槽上的裝置
test 在指定裝置上執行自檢
.enet-addr 顯示乙太網地址
.idprom 顯示ID PROM內容
.speed 顯示CPU與系統上的匯流排的速度
.registers 顯示暫存器內容
檢視系統Boot PROM版本
banner命令列出很有幫助的系統資訊,如模組名,Boot PROM版本號,記憶體量,乙太網地址,及host ID。
下面是banner命令的輸出例子:
ok banner
Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 360MHz), Keyboard Present
OpenBoot 3.31, 128 MB (50 ns) memory installed, Serial #11888271.
Ethernet address 8:0:20:b5:66:8f, Host ID: 80b5668f.
啟動系統
使用boot命令從ok提示符下啟動Solaris OE。此命令有幾個可用選項,用於將系統啟動到不同的狀態。
boot命令的格式如下:
ok boot device_name - options
在ok提示符下輸入boot命令將系統自動啟動到多使用者狀態:
ok boot
下面的列表是boot命令的引數項:
·-s 將系統啟動到單使用者狀態,並要求使用者提供root口令
ok boot -s
ok boot cdrom -s
·-a 互動式啟動系統。如果需要執行替代檔案(即不使用下面例子中的某個既定檔案來載入系統,而是自己手工指定),使用此選項。boot程式向使用者請求如下資訊:
ok boot -a
Enter filename [kernel/sparcv9/unix]:
Enter default directory for modules [/platform/SUNW,Ultra-5_10/kernel
/platform/sun4u/kernel /kernel /usr/kernel]:
Name of system file [etc/system]:
root file system type [ufs]:
Enter physical name of root device:
·-r 執行重配置啟動。使用此選項查詢新安裝的裝置,並在/devices和/dev目錄中新增新的裝置條目。也將更新/etc/path_to_inst檔案。
ok boot -r
·-v 啟動系統,輸出更詳細的裝置資訊到控制檯。使用此選項在啟動過程中排錯。可以與其它選項一起使用:
ok boot -v
ok boot -rv
ok boot -sv
查詢更多細節資訊
可以使用help命令獲取OpenBoot韌體的主要目錄。下面是Ultra 5工作站上help輸出的例子,它使用的是3.31版本的OpenBoot PROM:
ok help
Enter 'help command-name' or 'help category-name' for more help
(Use ONLY the first word of a category description)
Examples: help system -or- help nvramrc
Categories:
boot (Load and execute a program)
nvramrc (Store user defined commands)
system configuration variables (NVRAM variables)
command line editing
editor (nvramrc editor)
resume execution
devaliases (Device aliases)
diag (Diagnostics commands)
ioredirect (I/O redirection commands)
misc (Miscellaneous commands)
ok
help命令的輸出列表提供了許多可以用來檢視更多細節的關鍵字。
如,要檢視上例中主要類別的特定資訊,執行下面命令之一:
ok help boot
ok help nvramrc
ok help diag
ok help misc
列出NVRAM引數
可以使用printenv命令列出所有的NVRAM引數。如果引數被修改過,printenv命令會顯示其預設值與當前設定值,例:
ok printenv
Variable Name Value Default Value
tpe-link-test? true true
scsi-initiator-id 7 7
keyboard-click? false false
keymap
ttyb-rts-dtr-off false false
ttyb-ignore-cd true true
ttya-rts-dtr-off false false
ttya-ignore-cd true true
ttyb-mode 9600,8,n,1,- 9600,8,n,1,-
ttya-mode 9600,8,n,1,- 9600,8,n,1,-
pcia-probe-list 1,2,3,4 1,2,3,4
pcib-probe-list 1,2,3 1,2,3
mfg-mode off off
diag-level max max
#power-cycles 273
output-device screen screen
input-device keyboard keyboard
boot-command boot boot
auto-boot? true true
diag-device net net
boot-device disk net disk net
local-mac-address? false false
screen-#columns 80 80
screen-#rows 34 34
use-nvramrc? false false
nvramrc devalias pgx24 /pci1f,0 ...
security-mode none
security-password
security-#badlogins 0
diag-switch? false false
ok
可使用printenv命令顯示單個引數及其值。
例如,執行如下命令顯示boot-device引數值:
ok printenv boot-device
boot-device = disk net
boot-device可能的值包括disk,net和cdrom。
注意:一些OpenBoot PROM引數,如auto-boot?,以問號結束。如果OpenBoot PROM引數以問號結束,其引數值通常是true或false。
更改NVRAM引數
可以使用setenv命令更改當前指定給NVRAM引數的值。如果auto-boot?引數設定為true,系統自動啟動。如果為false,系統會停止在ok提示下。
下面的例子更改了auto-boot?引數的值,從預設設定true改為false。
ok printenv auto-boot?
auto-boot? = true
ok
ok setenv auto-boot? false
auto-boot? = false
reset-all命令將系統掛起,清除所有的緩衝區與暫存器,並在系統上執行一個軟體模擬的power-off/power-on操作。
ok reset-all
Resetting ...
注意:,在PROM3.x及更高版本上,如果要執行probe或其它測試命令,必須以reset-all命令清除系統暫存器。
恢復預設的NVRAM引數值
使用set-defaults命令將所有的NVRAM引數重新設定為其預設值。它隻影響那些曾經被賦予預設值的引數(即有的引數是沒有預設值的)。
ok set-defaults
Setting NVRAM parameters to default values.
ok
以set-default命令後面跟引數名,將該指定引數設定為其預設值。
ok set-default parameter-name
如,執行如下命令將diag-level引數重設:
ok set-default diag-level
要恢復預設的NVRAM引數值,可以在加電啟動系統時,按住Stop-N組合鍵。
當鍵盤上的LED燈開始閃爍時,放開組合鍵,系統繼續啟動。
顯示連線到匯流排上的裝置
使用probe命令檢視當前連線到系統的外設,如硬碟,磁帶驅動器或CDROM。
要檢視系統上可用的不同的probe命令,使用sifting命令。sifting命令在你不知道確切的OpenBoot PROM命令語法,而需要使用時特別有用。
例如,要查詢可用的probe命令,執行如下命令:
ok sifting probe
(f006c954) probe-all (f006c5a0) probe-all (f006c378) probe-ide
(f006c1e8) probe-pci-slot (f006bc8c) probe-scsi
(f006bd78) probe-scsi-all (f0060fe8) probe-pci
(下略)
最常用的probe命令是probe-scsi,probe-scsi-all和probe-ide命令。
包含FC-AL(Fibre Channel-Arbitrated Loop ) 和 GBICs(Gigabit Interface Converters)的系統使用probe-fcal-all命令。
注意:如果在Sun系統上的Boot PROM版本是3.x或更高,執行probe命令時可能會出現如下的警告訊息:
This command may hang the system if a Stop-A or halt command has been executed. Please type reset-all to reset the system before executing this command.
Do you wish to continue? (y/n) n
執行如下命令以防止系統被掛起:
ok setenv auto-boot? false
ok reset-all
判定系統在執行probe命令時是否掛起的一個方法是使用.registers命令:
ok .registers
Normal Alternate MMU Vector
0: 0 0 0 0
1: 0 0 0 0
2: 0 0 0 0
3: 0 0 0 0
4: 0 0 0 0
(output edited for brevity)
%PC 0 %nPC 0
%TBA 0 %CCR 0 XCC:nzvc ICC:nzvc
前面的輸出顯示所有的暫存器均為空,值為0。如果暫存器的值非為0,那很有可能probe命令讓系統掛起。
probe-scsi命令
probe-scsi命令標識連線到板載SCSI控制器上的所有外圍裝置。probe-scsi命令使用其目標地址標識如硬碟,磁帶驅動器或CDROM等外圍裝置。
ok probe-scsi
Target 1
Unit 0 Disk FUJITSU MAB3045S SUN4.2G17059825M62990
Target 3
Unit 0 Disk IBM DDRS34560SUN4.2GS98E99255C5917
(C) Copyright IBM Corp.
1997. All rights reserved.
Target 6
Unit 0 Removable Read Only device SONY CDROM
probe-scsi-all命令
probe-scsi-all命令標識所有連線到系統板上的SCSI控制器或分離的SBus或PCI SCSI控制器上的外圍裝置。
ok probe-scsi-all
,,
Target 3
Unit 0 Disk FUJITSU MAB3045S SUN4.2G1907
Target 4
Unit 0 Removable Tape EXABYTE EXB-8505SMBANSH20090
probe-ide命令
probe-ide命令標識連線到板載IDE控制器上的硬碟或CDROM。此命令顯示內部裝置的裝置號:
ok probe-ide
Device 0 ( Primary Master )
ATA Model : ST 38420A (DISK)
Device 1 ( Primary Slave )
Not Present
Device 2 ( Secondary Master )
Removable ATAPI Model : CRD-8322B (CD-ROM)
Device 3 ( Secondary Slave )
Not Present
probe-fcal-all命令
probe-fcal-all OpenBoot PROM命令標識系統上所有包含FC-AL GBIC的外圍裝置。Sun Enterprise 3500即是這類系統的一個例子:
ok probe-fcal-all
probe-fcal-all命令在Sun Blade 1000工作站上不可用。在Sun Blade 1000工作站上標識板載或外接FC-AL驅動器,使用probe-scsi-all命令。
ok probe-scsi-all
,600000/SUNW,
LiD HA --- Port WWN --- ---- Disk description ----
10 10 2100002037651b0e SEAGATE ST318304FSUN18G 022D0017L007G2
12 12 2100002037651c12 SEAGATE ST318304FSUN18G 022D0017L007VJ
1 1 2100002037653317 SEAGATE ST318304FSUN18G 032D0020L009TT
13 13 2100002037651f72 SEAGATE ST318304FSUN18G 022D0017L007JZ
11 11 2100002037651f76 SEAGATE ST318304FSUN18G 022D0017L007AL
14 14 2100002037651bf5 SEAGATE ST318304FSUN18G 022D0017L007XS
第三節 標識系統的啟動裝置
Sun硬體使用裝置樹的概念組織連線到系統中的裝置。
圖8-6顯示了Ultra 5或Ultra 10工作站上的裝置樹的組織結構。
注意:圖8-6中的目錄採取了簡化,以方便顯示。
OpenBoot韌體採集POST的資訊建立裝置樹。裝置樹被裝載到記憶體中,在啟動時被kernel使用,以標識所有配置好的裝置。
裝置樹的頂端是根裝置節點。根裝置節點下面是一個匯流排連線節點。連線到匯流排連線節點的是一個葉節點,一般是安裝的裝置的控制器。
圖8-6 Ultra 5或Ultra 10工作站上的裝置樹(部分)
圖8-6中,裝置,0是IDE裝置代表硬碟驅動器。,0裝置代表CDROM 驅動器。它們都連線到IDE控制器上。同樣,,0裝置是SCSI硬碟裝置,,0是SCSI磁帶機裝置。它們都連線到PCI卡的SCSI控制器SUNW,上。
OpenBoot韌體建立的裝置樹路徑,隨著系統的型別及其裝置控制而變。
圖8-7顯示了Ultra工作站上一個PCI匯流排的硬碟裝置路徑。
圖8-7 Ultra工作站上PCI IDE匯流排中的硬碟裝置路徑
圖8-8顯示了Ultra工作站上PCI-SCSI匯流排上面的硬碟的裝置路徑。
圖8-8 Ultra工作站上PCI-SCSI匯流排上的硬碟裝置路徑
show-devs命令
可以使用show-devs命令檢視整個裝置樹。
下面的例子了show-dev命令的輸出:
ok show-devs
/SUNW,,0
,0
/virtual-memory
,10000000
,
,,1
,,
,,1/SUNW,
,,,1
,,
,,
,,
,,,,200000
,,,0
,,,0
,
,,
(output truncated)
ok
注意:除了使用show-devs命令顯示整個裝置樹之外,還可以使用如下的OpenBoot PROM命令檢視指定裝置的資訊:show-ttys, show-displays, show-nets, show-disks, 與show-tapes。
devalias命令
使用devalias命令為系統標識當前的根裝置別名。
下面的例子顯示了devalias命令的輸出:
ok devalias
screen ,,1/SUNW,
net ,,,1
cdrom ,,,0:f
disk ,,,0
disk3 ,,,0
disk2 ,,,0
disk1 ,,,0
disk0 ,,,0
ide ,,
floppy ,,
ttyb ,,
ttya ,,
keyboard! ,,,3083f8:forcemode
keyboard ,,,3083f8
mouse ,,,3062f8
name aliases
左邊是裝置別名的輸出列表,右邊是每個裝置的實體地址輸出列表。
裝置別名被硬編碼寫入OpenBoot PROM韌體中去的,比物理裝置地址更好記憶與使用。disk裝置別名標識了系統的預設啟動裝置。
NVRAM中的boot-device引數設定系統的啟動裝置。預設情況下,boot-device引數設定為disk net。可以在ok提示符下使用命令檢視系統的啟動裝置。
要從預設裝置啟動,執行boot命令:
ok boot
第四節 建立與刪除定製裝置別名
NVRAM中有一部分稱為NVRAMRC,裡面存放了定製的引數的值,也預留用於儲存新裝置別名的空間。預設的,外部裝置沒有與之關聯的裝置別名。
NVRAMRC受nvalias與nvunalias命令的影響,也受引數usr-nvramrc?的影響。
nvalias命令
使用nvalias命令建立新的裝置別名,以訪問新新增的外部裝置。命令格式如下:
nvalias aliasname device_path
nvalias命令的作用是將如下的命令列儲存到NVRAMRC中:
devalias aliasname device_path
下面的例子顯示如何新增新的啟動裝置別名,稱為mydisk,並從新的啟動裝置別名啟動系統。
注意:可以使用如下的快捷方式,執行show-disks命令,然後選擇一個裝置,然後使用Control-Y鍵將裝置路徑複製到命令列上。
例子使用show-disks命令為使用的硬碟選擇裝置路徑。然後使用nvalias命令建立一個新的裝置別名mydisk。
ok show-disks
a) ,,1/disk
b) ,
c) ,,
d) ,,
e) ,,,3023f0
q) NO SELECTION
Enter Selection, q to quit: d
,, has been selected.
Type ^Y (Control-Y) to insert it in the command line.
e.g. ok nvalias mydev ^Y
for creating devalias mydev for
,,
ok nvalias mydisk ^y
在命令列上按下Control-Y鍵將選定的硬碟的裝置路徑貼上到命令列上。
ok nvalias mydisk ,,,0
注意:當裝置路徑被貼上到命令列(使用Control-Y鍵)上時,目標號與邏輯單元號(LUN logical unit number)需要新增,如,0或,0。
設定boot-device引數為新值,本例中是mydisk,然後啟動系統。
ok setenv boot-device mydisk
boot-device = mydisk
ok boot
nvunalias命令
使用nvunalias命令刪除裝置別名。使用如下命令格式:
ok nvunalias aliasname
注意:nvalias命令是一個例外,更新被立即寫到NVRAM上,不需要使用reset-all命令。
例子中,使用nvunalias命令從NVRAMRC中刪除別名mydisk,並使用setenv命令將boot-device引數設定為disk。
ok nvunalias mydisk
ok setenv boot-device disk
boot-device = disk
ok reset-all
Resetting ...
第五節 從shell中檢視並更改NVRAM引數
Solaris OE執行時,使用/usr/sbin/eeprom命令檢視並更改NVRAM引數。
使用eeprom命令
使用eeprom命令時有如下幾條需要注意:
·只有root使用者可以更改引數的值
·當命令在C shell中執行時,必須以單引號括住引數???
·所有的更新都是永久的,不需要使用reset命令來撤消引數更改。
下面的例子使用eeprom命令相看並更改NVRAM引數:
·執行如下命令列出所有的引數及其當前值:
#eeprom
·執行如下命令列出單個引數及其值,這裡引數是boot-device。
# eeprom boot-device
boot-device=disk
#
·要更改當前的預設啟動裝置為disk2,執行如下命令:
# eeprom boot-device=disk2
#
·要更改auto-boot?引數的值,執行如下命令:
# eeprom auto-boot?=true
#
第六節 中止不響應的系統
當系統死鎖或停止對鍵盤響應時,你可能需要中斷它。中斷系統時,所有的活動程式立即停止,處理器只為OpenBoot PROM服務。不允許重新整理記憶體或同步檔案系統。
中止未響應的系統
有如下的幾種方法嘗試:
1、嘗試從遠端登入到未響應的系統上,找出並殺死造成系統停止響應的程式
2、嘗試重啟未響應的系統。
3、按下不響應系統的鍵盤上的Stop-A組合鍵,系統被置於ok提示符下。
注意:如果使用ASCII終端作為系統控制檯,使用Break鍵。
4、使用OpenBoot PROM下的sync命令手工同步檔案系統:
ok sync
此命令使所有的檔案系統同步,並將記憶體作一個crash dump,然後重啟系統
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/196700/viewspace-713562/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java編譯和執行的命令Java編譯
- Solaris Prom狀態命令與引數(轉)
- 第八章-----執行緒同步執行緒
- SUN的PROM狀態命令與引數(轉)
- 初探 Go 的編譯命令執行過程Go編譯
- .Net 5中Windows Forms執行時的新功能(翻譯)WindowsORM
- 關於describe和test執行順序的翻譯
- [翻譯]ElasticSearch官方文件-執行查詢和過濾操作Elasticsearch
- Drill官網文件翻譯二:Drill查詢的執行
- 【翻譯】使用PowerShell獲取網站執行時資料網站
- Python 使用白嫖網易翻譯 API 進行翻譯PythonAPI
- Android基礎進階之EffectiveJava翻譯系列(第八章:異AndroidJava
- 編譯Android下可執行命令的FFmpeg編譯Android
- 【Java】【轉】在命令列中編譯和執行javaJava命令列編譯
- 20行Python程式碼擼一個命令列英語翻譯工具Python命令列
- [譯]Prometheus監控NodeJS SDK(prom-client)使用說明PrometheusNodeJSclient
- sqlplus & rman 命令下,使用上下翻動鍵,呼叫之前執行過的命令SQL
- Tornado 4.3文件翻譯: 使用者指南-執行和部署
- 命令執行漏洞
- Docker執行命令Docker
- .NET 編譯執行or解釋執行?編譯
- 翻譯
- Yurii談翻譯(五)怎樣翻譯更地道:so…that…的翻譯
- Apache Hadoop文件翻譯之二(HDFS命令指南)ApacheHadoop
- python3:爬有道翻譯(命令列版)Python命令列
- AIX的iostat命令解析(翻譯紅皮書)AIiOS
- TortoiseSVN 命令 (命令列執行工具)命令列
- 如何完成中文翻譯日文線上翻譯
- Yurii談翻譯(四)怎樣翻譯更地道:翻譯如鋪路
- Yurii談翻譯(九)怎樣翻譯更地道:冠詞a的翻譯
- Yurii談翻譯(十)怎樣翻譯更地道:最高階的翻譯
- Docker命令-docker exec-在執行的容器中執行命令Docker
- 翻譯的未來:翻譯機器和譯後編譯編譯
- Java執行cmd命令Java
- 遠端執行命令
- 命令列執行Nunit命令列
- .net執行cmd命令
- 如何執行maven和執行maven的命令。Maven