2


指令行介面

本章討論下列的程序:



備註 - 您不需刻意啟用 Sun Fire 中階系統上的動態重新配置,因為 DR 會依照預設自動啟用。不過,如需在執行 Solaris 8 軟體的系統上使用所有功能,則必須安裝較新版本的核心更新及特定修補程式。如需更多資訊,請至下列的 Sun 網站:

http://www.sun.com/sunsolve

http://www.sun.com/servers/midrange/dr_sunfire




cfgadm 指令

cfgadm(1M) 指令提供可動態重新配置的硬體資源之配置管理作業。下表列出 DR 板狀態。

 


表 2-1 系統控制器 (SC) 的 DR 板狀態

板狀態

說明

可用的

插槽不指定給任何特定的網域。

指定的

板屬於網域,但硬體尚未配置成可使用該板。板可以由基座連接埠重新指定,也可以由其指定的網域釋放。

作用中

指定給板的網域正在使用板。您無法重新指定作用中的板。


 

顯示基本板狀態

cfgadm 程式顯示板與插槽的相關資訊。請參閱 cfgadm(1) 線上說明手冊,以取得該指令的選項。

許多作業需要您指定系統板名稱。若要取得這些系統名稱,請鍵入 cfgadm(不加選項)。這麼做會顯示所有已知附接點的相關資訊,包括板插槽、SCSI 匯流排及 cPCI 插槽。下列顯示的為典型輸出。


程式碼範例 2-1 基本 cfgadm 指令的輸出


Ap_Id         Type         Receptacle   Occupant     Condition
N0.IB6        PCI_I/O_Boa  connected    configured   ok
N0.IB7        PCI_I/O_Boa  connected    configured   ok
N0.IB8        PCI_I/O_Boa  connected    configured   ok
N0.IB9        PCI_I/O_Boa  disconnected unconfigured unknown
N0.SB0        CPU_Board    connected    configured   unknown
N0.SB1        CPU_Board    disconnected unconfigured failed
N0.SB2        CPU_Board    connected    configured   ok
N0.SB3        unknown      empty        unconfigured unknown
N0.SB4        unknown      empty        unconfigured unknown
N0.SB5        unknown      empty        unconfigured unknown
c0            scsi-bus     connected    configured   unknown
c1            scsi-bus     connected    unconfigured unknown
c2            scsi-bus     connected    unconfigured unknown
c3            scsi-bus     connected    configured   unknown

 

顯示詳細板狀態

若要取得詳細的狀態報告,請使用指令 cfgadm -av-a 選項會列出附接點,而 -v 選項則會開啟擴充式(詳細)說明。

程式碼範例 2-2 為部分的 顯示,由 cfgadm -av 指令產生。輸出呈現複雜狀態,因為輸出行圍繞在該畫面中。(此狀態報告是針對相同的系統範例,並會提供每個顯示項目的細節。)

 


程式碼範例 2-2 cfgadm -av 指令的輸出
# cfgadm -av
Ap_Id            Receptacle    Occupant       Condition  Information
When          Type          Busy       Phys_Id
N0.IB6           connected     configured     ok        powered-on, assigned
Apr 3 18:04  PCI_I/O_Boa   n          /devices/ssm@0,0:N0.IB6
N0.IB6::pci0     connected     configured     ok        device /ssm@0,0/pci@19,70000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB6::pci0
N0.IB6::pci1     connected     configured     ok        device /ssm@0,0/pci@19,600000
Apr 3 18:04 io             n          /devices /ssm@0,0:N0.IB6::pci1
N0.IB6::pci2     connected    configured      ok        device /ssm@0,0/pci@18,700000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB6::pci2
N0.IB6::pci3     connected     configured     ok        device /ssm@0,0/pci@18,600000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB6::pci3
N0.IB7           connected     configured     ok        powered-on, assigned
Apr 3 18:04 PCI_I/O_Boa    n          /devices/ssm@0,0:N0.IB7
N0.IB7::pci0     connected     configured     ok        device /ssm@0,0/pci@1b,700000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB7::pci0
N0.IB7::pci1     connected     configured     ok        device /ssm@0,0/pci@1b,600000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB7::pci1
N0.IB7::pci2     connected     configured     ok        device /ssm@0,0/pci@1a,700000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB7::pci2
N0.IB7::pci3     connected     configured     ok        device /ssm@0,0/pci@1a,600000
Apr 3 18:04 io             n          /devices/ssm@0,0:N0.IB7::pci3
N0.IB8           connected     configured     ok        powered-on, assigned
Apr 3 18:04 PCI_I/O_Boa    n          /devices/ssm@0,0:N0.IB8
N0.IB8::pci0     connected     configured     ok        device /ssm@0,0/pci@1d,700000
Apr 3 18:04 io             n         /devices/ssm@0,0:N0.IB8::pci0
N0.IB8::pci1     connected     configured     ok        device /ssm@0,0/pci@1d,600000
Apr 3 18:04 io             n         /devices/ssm@0,0:N0.IB8::pci1
N0.IB8::pci2     connected     configured     ok        device /ssm@0,0/pci@1c,700000, referenced
Apr 3 18:04 io             n        /devices/ssm@0,0:N0.IB8::pci2
N0.IB8::pci3     connected     configured     ok        device /ssm@0,0/pci@1c,600000, referenced
Apr 3 18:04 io             n        /devices/ssm@0,0:N0.IB8::pci3
N0.IB9           disconnected  unconfigured   unknown  powered-on, assigned
Apr 3 18:04 PCI_I/O_Boa    n        /devices/ssm@0,0:N0.IB9
N0.SB0           connected     configured     unknown  powered-on, assigned
Apr 3 18:04 CPU_Board      n        /devices/ssm@0,0:N0.SB0
N0.SB0::cpu0     connected     configured     ok        cpuid 0, speed 750 MHz, ecache 8 MBytes
Apr 3 18:04 cpu            n       /devices/ssm@0,0:N0.SB0::cpu0
N0.SB0::cpu1     connected     configured     ok        cpuid 1, speed 750 MHz, ecache 8 MBytes
Apr 3 18:04 cpu            n       /devices/ssm@0,0:N0.SB0::cpu1
N0.SB0::cpu2     connected     configured     ok        cpuid 2, speed 750 MHz, ecache 8 MBytes
Apr 3 18:04 cpu            n       /devices/ssm@0,0:N0.SB0::cpu2

 

以下提供一些上述畫面的細節:


圖 2-1 cfgadm -av 畫面的細節


 

指令選項

cfgadm (1M) 指令的選項及其 -c 旗標列於下表之中:


表 2-2 cfgadm -c 指令選項

cfgadm -c 選項

功能

connect

插槽提供電源給板,並開始監視板。若先前未指定插槽,現在就會指定插槽。

disconnect

系統停止監視板,而且插槽的電源關閉。

configure

作業系統指定板的功能角色,並針對板以及附接於板的裝置載入裝置驅動程式。

unconfigure

系統將板以邏輯的方式從作業中的系統分離而出,並使相關的裝置驅動程式離線。環境監視功能會繼續,但系統無法使用板上的裝置。


 

cfgadm -x指令提供的選項列於下表之中。


表 2-3 cfgadm -x 指令選項

cfgadm -x 選項

功能

assign

增加(指定)板給網域。

unassign

從網域刪除(取消指定)板。

poweron

開啟系統板的電源。

poweroff

關閉系統板的電源。


 

cfgadm_sbd(1M) 線上說明手冊提供 cfgadm -ccfgadm -x 選項的額外資訊。sbd 程式庫透過 cfgadm 架構,提供 sbd 類別的熱插入系統板功能。


測試板與組件


procedure icon  測試 CPU/記憶體板

在您測試 CPU/記憶體板之前,必須將它指定給電源已開啟且連線已中斷的網域。若不符合這些狀況,則板的測試會失敗。

您可以使用 Solaris cfgadm 指令測試 CPU/記憶體板。請以超級使用者身份鍵入:


# cfgadm -t 附接點-ID

 

若要更改 cfgadm 執行的診斷程式等級,請依下列的方式提供 cfgadm 指令診斷程式等級。


# cfgadm -o platform=diag=<等級> -t 附接點-ID

 

其中等級 是指診斷程式等級附接點-ID 是指附接點識別碼。

若您不提供等級,則會由 setupdomain 指令設定預設的診斷程式等級。關於此設定的說明,請參閱「Sun Fire Midrange Systems Platform Administration Manual」及「Sun Fire Midrange System Controller Command Reference Manual」。各個診斷程式等級如下所示:


表 2-4 診斷程式等級

診斷程式等級

說明

init

僅執行系統板初始化程式碼。不會進行測試。可非常快速的通過 POST。

quick

所有系統板元件皆只會執行少許測試及測試模式。

default

除了記憶體與 Ecache 模組之外,所有系統板元件皆會執行所有測試及測試模式。注意:max 與 default 的定義相同。

max

除了記憶體與 Ecache 模組之外,所有系統板元件皆會執行所有測試及測試模式。注意:max 與 default 的定義相同。

mem1

在預設的等級執行所有的測試,加上更完整的 DRAM 與 SRAM 測試演算法。針對記憶體與 Ecache 模組,皆會以多重測試模式測試所有的位置。此等級不會執行更詳細的、更耗時的演算法。

mem2

與 mem1 相同,加上 DRAM 測試,可更清楚地比較 DRAM 資料的作業。


 

procedure icon  測試 I/O 組件

I/O 組件加入網域之前必須先經過測試。測試需要至少具有一個 CPU/記憶體板的備用網域,並且不執行作業系統。

1. 進入備用網域 (A-D) 之網域 shell。

2. 同時按住 CTRL 鍵與 ] 鍵叫出 telnet> 提示符號。接著鍵入 send break 以顯示系統控制器網域 shell。



備註 - 在此範例中,網域 A 為目前作用中的網域,而網域 B 為備用的網域。



3. 在備用網域 (B) shell 中,使用 addboard 指令將 I/O 組件加入網域中。


SC 主機名稱:B> addboard IBx

 

其中 x 為 6、7、8 或 9。

4. 請將備用網域中的虛擬主開關設定為開啟。


SC 主機名稱:B> setkeyswitch on
.
.
{x} ok

 

其中 x 代表 CPU。當您將虛擬主開關設定為開啟時,網域上會執行 POST。若您看見ok 提示符號,則代表 I/O 組件運作正常。

5. 鍵入:


SC 主機名稱:B> setkeyswitch standby

 

6. 若要刪除板,請鍵入:


SC 主機名稱:B> deleteboard ibx

 

7. 使用下列指令,在作用中的網域 (A) 新增板:


# cfgadm -c configure N0.IBx

 


安裝或置換板


procedure icon 在網域中安裝新板



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。另請參閱「Sun Fire Midrange Systems Platform Administration Manual」,以取得更多移除、置換板與元件的相關軟體程序。





備註 - 置換板時,您有時需要填充板。完整配置的 Sun Fire 中階系統附有三個不同的填充板:一個系統板填充板、一個 CompactPCI 填充板以及一個 L2 Repeater Board 填充板。



若您不清楚將板插入系統的方法,請先參閱「Sun Fire Midrange Systems Service Manual」後再開始本程序。

1. 辨識網域可用的空插槽,請以超級使用者身份鍵入下列內容:


# cfgadm -l -s "select=class(sbd)"

 

2. 務必穿戴腕帶正當接地。

3. 定位空插槽之後,請將系統板填充板從插槽中移除。

4. 請在一分鐘之內將板插入插槽中,以免系統過熱。

請參閱「Sun Fire Midrange Systems Service Manual」以取得系統板插入程序之完整逐一步驟。

5. 使用 cfgadm -c configure 指令,將電源打開、測試並配置板。


# cfgadm -c configure 附接點_ID

 

其中附接點_ID 是以下輸出所傳回的附接點 ID:cfgadm -l -s "select=class(sbd)"


procedure icon 不關機交換 CPU/記憶體板



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。另請參閱CompactPCI 的特定限制





備註 - 執行不關機交換作業是指使用者當插入卡時,完全按下卡的退出桿;或是在移除卡前,稍微鬆開退出桿。在進行不關機交換時作業員並不需發出任何指令,而熱插入則是使用 cfgadm 指令完成。



1. 若板是用於作業系統,請以超級使用者身份辨識要移除的板。

您必須知道插槽編號(附接點 ID)。


# cfgadm -l -s "select=class(sbd)"

 

2. 務必穿戴腕帶正當接地。

3. 將板從網域中分離,並使用 cfgadm 關閉板電源。


# cfgadm -c disconnect 附接點_ID

 

其中附接點_ID 代表附接點ID。

此指令將資源從作業系統與 OpenBoot PROM 移除、將板從網域中分離並關閉板的電源。

4. 檢驗電源與 Hotplug OK LED 的狀態。


當 CPU/記憶體板正在冷卻時,綠色電源 LED 會快速閃動。為了安全地將板從系統中移除,綠色電源 LED必須是不亮的,而黃色 Hotplug OK LED必須是亮著的。 

5. 完成硬體移除與板安裝的作業。若要取得更多相關資訊,請參閱「Sun Fire Midrange Systems Service Manual」。

6. 在移除和安裝板之後,請執行 cfgadm 指令將板帶回作業系統中。


# cfgadm -c configure 附接點_ID

 

其中附接點_ID 代表附接點 ID。

此指令會指定板給網域、開啟板的電源、測試板、附接板並將板的所有資源帶回作業系統。


7. 驗證綠色電源 LED是亮著的。

procedure icon  不關機交換 I/O 組件

有兩種 I/O 組件:CompactPCI (cPCI) 與標準的 PCI。下列指示適用於這兩種類型。但是,注意:cPCI 卡可以不關機交換、熱插入以及動態重新配置,PCI 卡與標準的 I/O 組件則無法進行不關機交換、熱插入以及動態重新配置。

執行不關機交換作業是指使用者當插入卡時,完全按下卡的退出桿;或是在移除卡前,稍微鬆開退出桿。在進行不關機交換時作業員並不需發出任何指令,而熱插入則是使用 cfgadm 指令完成。



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。



1. 若 I/O 組件是用於作業系統,請在網域中以超級使用者身份辨識要移除的 I/O 組件。

您必須知道插槽編號(附接點 ID)。


# cfgadm -l -s "select=class(sbd)"

 

2. 使用 cfgadm 指令將板從網域中分離並關閉板電源:


# cfgadm -c disconnect 附接點_ID

 

其中附接點_ID 代表附接點 ID。

此指令將資源從作業系統與 OpenBoot PROM 移除、將板與網域分離並關閉 I/O 組件的電源。

3. 使用 cfgadm 指令將板從網域中移除:


# cfgadm -x unassign 附接點_ID

 

4. 檢驗 I/O 組件上的 LED 狀態。


為了安全地將 I/O 組件從系統中移除,在 I/O 組件上的綠色電源 LED必須處於關閉狀態(不亮),而黃色 Hotplug OK LED必須是亮著的。 

5. 完成硬體移除與 I/O 組件安裝的作業。若要取得更多資訊,請參閱「Sun Fire Midrange Systems Service Manual」



備註 - 請務必正當接地後,再開始硬體移除與 I/O 組件安裝的作業。



在您將板帶回作業系統之前,您需要進入備用網域,此備用網域不執行作業系統,而且至少有一個 CPU/記憶體板以便測試 I/O 組件。

進入沒有執行作業系統的備用網域 (A-D) 之網域 shell,而且該網域 shell 至少 有一個 CPU/記憶體板。

6. 同時按住 CTRL 鍵與 ] 鍵叫出 telnet> 提示符號。鍵入 send break 以顯示系統控制器網域 shell。



備註 - 在此範例中,網域 A 為目前作用中的網域,網域 B 為備用的網域。



7. 在備用網域 shell 中,請使用 addboard 指令將 I/O 組件加入網域中。


SC 主機名稱:B> addboard ibx

 

其中 x 為 6、7、8 或 9。

8. 請將備用網域中的虛擬主開關設定為開啟。

當您將虛擬主開關設定為開啟時,網域上會執行 POST。


SC 主機名稱:B> setkeyswitch on
.
.
{x} ok

 

其中 x 代表 CPU。若您看見 ok 提示符號,則代表 I/O 組件運作正常。

9. 同時按住 CTRL 鍵與 ] 鍵叫出 telnet> 提示符號。鍵入 send break 以連接系統控制器網域 shell。

依據遠程登入 (Telnet) 連線的類型而定,您可能需要鍵入 send esc,接著鍵入 send break 以連線至系統控制器網域 shell。

10. 鍵入:


SC 主機名稱:B> setk standby

 

11. 若要刪除板,請鍵入:


SC 主機名稱:B> deleteboard ibx

 

12. 在網域 A 中的提示符號下配置 I/O 組件:


# cfgadm -c configure N0.IBx

 

不關機交換 CompactPCI卡

執行不關機交換作業,可當插入卡時,完全按下卡的退出桿;或是在移除卡前,稍微鬆開退出桿。在進行不關機交換時您不需發出任何指令,而熱插入作業則是使用 cfgadm 指令完成。

為了不關機交換 CompactPCI (cPCI)卡,您必須在 cPCI 卡 I/O 組件常駐的網域中啟動作業系統。當作業系統已於網域中啟動,所有的 cPCI 卡皆處於自動配置模式,而且不必使用 cfgadm 指令即可執行所有的配置與取消配置作業。

當您以不關機交換方式插入 cPCI 卡時,該卡的電源會自動開啟並進行配置。當您以不關機交換方式移除 cPCI 卡時,該卡的電源會自動取消配置並關閉電源。



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。




procedure icon  插入 CompactPCI 卡

1. 以超級使用者身份,辨識將要插入卡的插槽。

2. 將卡插入並將退出桿完全向下推,以便穩固地將卡附接。該卡的電源會自動開啟並進行配置。該卡上的藍色 Hotswap OK LED 應為不亮、I/O 組件上的綠色電源 LED 應該亮著、而黃色 Hotplug OK LED 應為不亮。以不關機交換方式插入即等同於鍵入下列指令:cfgadm -c configure 附接點_ID


procedure icon  移除 CompactPCI 卡



備註 - 在您不關機交換 CompactPCI (cPCI) 卡前,請確定卡上沒有作用中的 I/O。



1. 輕輕鬆開退出桿以停用該卡。


2. 請確定卡上的藍色 Hotswap OK LED 與 I/O 組件上的黃色 Hotplug OK LED都是亮著的,並確定組件上的綠色電源 LED 是不亮的。

3. 移除卡。

若網域主控台可用,則會出現訊息確認該卡已被取消配置。


procedure icon  熱插入 CompactPCI 卡

您可使用 cfgadm 指令來完成熱插入。而執行不關機交換作業則需在插入卡時,完全按下卡的退出桿;或是在移除卡前,稍微鬆開退出桿。在進行不關機交換時您絕對不需發出任何指令。

1. 以超級使用者身份,辨識要移除的 cPCI 卡。

您必須知道插槽編號(附接點 ID)。


# cfgadm -s "select=class(pci)"

 

2. 分離(取消配置)要移除的 cPCI 卡:


# cfgadm -c unconfigure 附接點_ID

 

其中附接點_ID 代表附接點 ID。卡會自動取消配置並關閉電源。

3. 確認卡已分離。


# cfgadm -s "select=class(pci)" 附接點_ID

 

4. 檢查 I/O 組件上的綠色電源 LED 和黃色 Hotplug OK LED,以及 cPCI 卡上的藍色 Hotswap OK LED。

當 I/O 組件上的綠色電源 LED 不亮時、I/O 組件上的黃色 Hotplug OK LED亮著時、以及 cPCI 卡上的藍色 Hotswap OK LED 是亮著時,即表示可以拔除 cPCI 卡。

5. 在穿戴腕帶正當接地後,請移除並置換 cPCI 卡。



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。



6. 安裝卡後,附接(配置)該卡:


# cfgadm -c configure 附接點_ID

 

當網域上的作業系統啟動時,根據預設該網域上所有的 cPCI 插槽會進入自動配置模式。在自動配置模式中每個插槽的不關機交換皆已啟動。



備註 - 若要停用「自動配置」功能,請使用下列指令:cfgadm -x disable_autoconfig 附接點_ID。若要重新啟動「自動配置」功能,請使用下列指令:cfgadm -x enable_autoconfig 附接點_ID



7. 檢查綠色電源 LED。


I/O 組件上的綠色電源 LED將會亮起,而 cPCI 卡上的藍色 Hotswap OK LED 應為不亮。

8. 檢驗卡已附接。


# cfgadm -s "select=class(pci)" 附接點_ID

 

procedure icon  將板從系統中移除



備註 - 在進行此程序之前,請先確定您已準備好系統板填充板,以置放於從系統移除之系統板的位置。系統板填充板為金屬材質的板子,上面有許多插孔讓冷空氣循環以利散熱。



1. 辨識要移除的板。

您必須知道插槽編號。


# cfgadm -l -s "select=class(sbd)"

 

2. 使用 cfgadm -c disconnect 指令將板從網域分離並關閉其電源。


# cfgadm -c disconnect 附接點_ID

 

其中附接點_ID 是以下輸出所傳回的附接點 ID:cfgadm -al -s "select=class(sbd)"。



caution icon

注意 - 關於實際移除及置換板的完整資訊,請參閱「Sun Fire Midrange Systems Service Manual」。沒有遵循指定程序會對系統板和其他元件造成損害。



3. 將板從系統中移除。

請參閱「Sun Fire Midrange Systems Service Manual」以取得系統板移除程序之完整逐一步驟。

4. 請在移除系統板後一分鐘內儘速將系統板填充板放入插槽中,以免系統過熱。


procedure icon  在網域之間移動板

1. 辨識要移除的板的插槽編號。


# cfgadm -l -s "select=class(sbd)"

 

2. 取消配置板但是不要關閉電源以保留測試狀態:


# cfgadm -o unassign,nopoweroff -c disconnect 附接點_ID

 

其中附接點_ID 是以下輸出所傳回的附接點 ID:cfgadm -l -s "select=class(sbd)"

該點的插槽並未指定給任何網域,而且所有網域都可以看見該插槽。

3. 在您要移動板的網域中,查看所見的該板狀態是否為切斷連線。


# cfgadm -al -s "select=class(sbd)"

 

4. 使用 cfgadm -c configure 指令配置新網域中的板,此即形同指定作業。


# cfgadm -c configure 附接點_ID

 

procedure icon  暫時切斷板的連線

您可以使用 DR 關閉板的電源並將其留在原處。例如,當板發生故障而剛好沒有備用的板可替換,或沒有系統板填充板可用時,您可能就需要這麼做。

1. 辨識要移除的板。

您必須知道插槽編號。


# cfgadm -l -s "select=class(sbd)"

 

2. 使用 cfgadm -c disconnect 指令將板從網域分離並關閉其電源。


# cfgadm -c disconnect 附接點_ID

 

其中附接點_ID 是以下輸出所傳回的附接點 ID:cfgadm -l -s "select=class(sbd)"