ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11 Information Library (日本語) |
- システムボード管理用の cfgadm コマンド
cfgadm -l [-a] [-o parsable] ap_id...
cfgadm -c function [-f] [-y | -n] [-o unassign | nopoweroff] [-v] ap_id...
cfgadm -t [-v] ap_id...
cfgadm -x [-f] [-v] function ap_id...
cfgadm_sbd プラグインは、クラス sbd のシステムボードを接続、構成、構成解除、および切断するための動的な再構成機能を提供します。このプラグインを使用すると、システムをリブートすることなく、システムボードと実行中のシステムを接続または切断することもできます。
cfgadm コマンドは /usr/sbin に存在します。cfgadm(1M) を参照してください。cfgadm_sbd プラグインは /usr/platform/sun4u/lib/cfgadm に存在します。
各ボードスロットは、デバイスツリーでは単一の接続点として表示されます。各コンポーネントは、動的接続点として表示されます。-a オプションを使用すると、各コンポーネントのタイプ、状態、条件、および各ボードスロットの状態と条件を表示できます。
cfgadm オプションは、プラットフォームに応じて動作が異なります。また、接続点の形式もプラットフォームに応じて異なります。詳細は、「プラットフォームにおける注意事項」の節を参照してください。
コンポーネントの条件の名前と説明を次に示します。
コンポーネントでテストが失敗しました。
コンポーネントは稼働しています。
コンポーネントはテストされませんでした。
コンポーネントの受容体の状態の名前と説明を次に示します。
コンポーネントはボードスロットに接続されています。
コンポーネントの占有装置の状態の名前と説明を次に示します。
コンポーネントは、Solaris オペレーティング環境で使用できる状態です。
コンポーネントは、Solaris オペレーティング環境で使用できる状態ではありません。
ボードの条件の名前と説明を次に示します。
ボードでテストが失敗しました。
ボードは稼働しています。
ボードはテストされませんでした。
ボードスロットは使用できません。
ボードを挿入すると、受容体の状態は empty から disconnected に変わります。ボードを取り外すと、受容体の状態は disconnected から empty に変わります。
注意: connected 状態のボード、または電源が投入されていて disconnected 状態のボードを取り外すと、オペレーティングシステムがクラッシュし、システムに修復不可能な障害を与える場合があります。
ボードの受容体の状態の名前と説明を次に示します。
ボードは電源が投入されており、システムバスに接続されています。ボードが connected 状態になった場合のみ、ボード上のコンポーネントが表示されます。
ボードはシステムバスから切断されています。ボードは、電源を切断しなくても disconnected 状態にできます。ただし、スロットから取り外す前に、ボードの電源を切断し、disconnected 状態にする必要があります。
ボードが存在しません。
切断されたボードの占有装置の状態は常に unconfigured です。ボードの占有装置の状態の名前と説明を次の表に示します。
ボード上の少なくとも 1 つのコンポーネントが構成されています。
ボード上のすべてのコンポーネントが構成解除されています。
ダイナミックシステムドメイン (Dynamic System Domain、DSD。このマニュアルではドメインと呼びます) を基盤とするプラットフォームでは、シャーシ内のスロットが、電気的に絶縁されたハードウェアパーティション (つまり、DSD) に分割されます。DSD を基盤としないプラットフォームでは、すべてのスロットがシステムに恒久的に割り当てられます。
スロットは空けておくことも使用することもできます。また、任意の数のドメインに割り当てることも、任意の数のドメインで使用できるようにすることもできます。所定のドメインで使用できるスロットの数は、システムコントローラで維持される使用可能なコンポーネントのリスト (Available Component List、ACL) で制御されます。ACL は、Solaris オペレーティング環境によって提供されるアクセス制御リストではありません。
スロットがドメインの ACL に含まれ、スロットが別のドメインに割り当てられていない場合にのみ、ドメインからスロットを認識できます。割り当てられていないスロットは、そのスロットが ACL に含まれているすべてのドメインから認識できます。スロットが特定のドメインに割り当てられると、そのスロットはほかのドメインから認識できなくなります。
あるドメインで認識可能であるが、未割り当てのスロットは、まずそのドメインに割り当てをしてから、ほかの状態変更コマンドを適用する必要があります。割り当ては、-x assign を使用して明示的に行うか、接続の一環として暗黙的に行うことができます。スロットを別のドメインで使用できるようにするには、特定のドメインから割り当て解除する必要があります。割り当て解除は常に明示的であり、-x unassign を使用して直接行うか、または -o unassign を使用して切断オプションとして行います。
ボードスロットまたはボード上のコンポーネントの状態を変更する機能を、任意の接続点に対し同時に発行できます。一度に許可される状態変更操作は 1 つのみです。状態変更情報の Busy フィールドの Y は、操作が進行中であることを示します。
次の一覧は、状態を変更する機能を示しています。
configure
unconfigure
connect
disconnect
ボードの可用性を変更するコマンドを、任意の接続点に対し同時に発行できます。一度に許可される可用性変更操作は 1 つのみです。これらの機能により、cfgadm -l の出力の情報文字列も変更されます。Busy フィールドの Y は、操作が進行中であることを示します。
次の一覧は、可用性を変更する機能を示しています。
assign
unassign
ボードスロットまたはボード上のコンポーネントの条件を変更する機能を、任意の接続点に対し同時に発行できます。一度に許可される条件変更操作は 1 つのみです。これらの機能により、cfgadm -l の出力の情報文字列も変更されます。Busy フィールドの Y は、操作が進行中であることを示します。
次の一覧は、条件を変更する機能を示しています。
poweron
poweroff
test
この節では、構成解除プロセスについて説明し、永続メモリーを移動するプロセス中のさまざまな段階におけるソースボードおよびターゲットボードの状態を示します。
次のコード例では、ボード 0 上の永続メモリーをドメイン内の別のボードに移動する必要があります。したがって、ボード 0 がソース、ボード 1 がターゲットです。
ボードがビジーとマークされている間は、そのボードでステータス変更操作を開始することはできません。簡潔にするため、CPU 情報はコード例から削除されています。
プロセスは次のコマンドで開始されます。
# cfgadm -c unconfigure -y SB0::memory &
最初に、ボード 0 上の永続メモリーと同じアドレス範囲にあるボード 1 上のメモリーを削除する必要があります。この段階では、ソースボード、ターゲットボード、およびメモリーの接続点がビジーとマークされています。次のコマンドでステータスを表示できます。
# cfgadm -a -s cols=ap_id:type:r_state:o_state:busy SB0 SB1 Ap_Id Type Receptacle Occupant Busy SB0 CPU connected configured y SB0::memory memory connected configured y SB1 CPU connected configured y SB1::memory memory connected configured y
ボード 1 上のメモリーを削除すると、unconfigured とマークされます。次の例に示すように、ボード 0 上のメモリーは configured のままですが、引き続きビジーとマークされています。
Ap_Id Type Receptacle Occupant Busy SB0 CPU connected configured y SB0::memory memory connected configured y SB1 CPU connected configured y SB1::memory memory connected unconfigured n
次に、メモリーがボード 0 からボード 1 にコピーされます。コピーされると、メモリーの占有装置の状態が切り替わります。ボード 0 上のメモリーは unconfigured になり、ボード 1 上のメモリーは configured になります。次の例に示すように、プロセスのこの時点では、ボード 0 だけがビジーのままです。
Ap_Id Type Receptacle Occupant Busy SB0 CPU connected configured y SB0::memory memory connected unconfigured n SB1 CPU connected configured n SB1::memory memory connected configured n
次の例に示すように、プロセス全体が完了すると、ボード 0 上のメモリーは unconfigured のままとなり、接続点はビジーではありません。
Ap_Id Type Receptacle Occupant Busy SB0 CPU connected configured n SB0::memory memory connected unconfigured n SB1 CPU connected configured n SB1::memory memory connected configured n
永続メモリーが移動され、ボード 0 上のメモリーが構成解除されました。この時点で、いずれのボードでも新しい状態変更操作を開始できます。
システムボードプラグインによって解釈されるオプションの後に配置する、プラットフォーム固有のオプションを指定できます。すべてのプラットフォーム固有のオプションの前に、platform キーワードを指定する必要があります。次の例は、プラットフォーム固有のオプションを指定したコマンドの一般的な形式を示しています。
command -o sbd_options,platform=platform_options
このマニュアルページでは、cfgadm コマンドの -v、-a、-s、または -h オプションについては説明していません。これらのオプションの説明については、cfgadm(1M) を参照してください。cfgadm_sbd プラグインでは、次のオプションがサポートされています。
状態変更機能を実行します。次の機能を使用できます。
占有装置の状態を unconfigured に変更します。この機能は、システムボードスロット、およびシステムボード上のすべてのコンポーネントに適用されます。
unconfigure 機能により、CPU が CPU リストから削除され、物理メモリーがシステムメモリープールから削除されます。いずれかのデバイスがまだ使用中の場合、cfgadm コマンドは失敗し、ユーザーにエラーが報告されます。デバイスのビジー状態が終わりしだい、コマンドを再試行できます。CPU が使用中の場合は、オフラインであることを確認してから操作を進める必要があります。pbind(1M)、psradm(1M)、および psrinfo(1M) を参照してください。
unconfigure 機能は、物理メモリーを別のシステムボードに移動してから、構成解除するボードからメモリーを削除します。移動するメモリーの種類によっては、別のボード上に十分なメモリーが見つからない場合に、または適切な物理メモリー範囲が見つからない場合に、コマンドが失敗します。
永続メモリーの場合、メモリーが移動され、メモリーコントローラが再プログラムされている間は、オペレーティングシステムを停止 (つまり、休止) する必要があります。オペレーティングシステムを停止する必要がある場合、操作の続行を確認するプロンプトが表示されます。「はい」または「いいえ」と答えるには、それぞれ -y または -n オプションを使用します。
メモリーの量およびシステム負荷によっては、メモリーの移動に数分かかる場合があります。メモリーの接続点に対して status コマンドを発行すると、操作の進行状況を監視できます。cfgadm コマンドを停止して、メモリー操作を中断することもできます。削除されたメモリーは、システムメモリープールに戻されます。
受容体の状態を disconnected に変更します。この機能は、システムボードスロットのみに適用されます。
占有装置の状態が configured になっている場合は、占有装置の構成解除を試みます。次に、システムボードの電源を切断します。この時点で、ボードをスロットから取り外すことができます。
ダイナミックシステムドメインをサポートするプラットフォームでは、この機能は、ボードを割り当てられた状態のままにします。
-o nopoweroff を指定した場合、disconnect 機能は、ボードを電源が投入された状態のままにします。-o unassign を指定した場合、disconnect 機能は、ドメインからボードを割り当て解除します。
ドメインからボードを割り当て解除した場合、そのボードを別のドメインに割り当てることができます。ただし、別のドメインに割り当てた場合、割り当て解除されたドメインはそのボードを使用できなくなります。
占有装置の状態を configured に変更します。この機能は、システムボードスロット、およびシステムボード上のすべてのコンポーネントに適用されます。
受容体の状態が disconnected になっている場合は、configure 機能は受容体への接続を試みます。その後、connect 機能によって作成されたデバイスツリーを順に調べていき、必要に応じてデバイスを接続します。この機能を実行すると、すでに構成済みのコンポーネントを除き、ボード上のすべてのコンポーネントが構成されます。
CPU の場合、configure 機能により、CPU が CPU リストに追加されます。メモリーの場合、configure 機能は、メモリーが初期化されているのを確認してから、メモリーをシステムメモリープールに追加します。configure 機能が正常に完了すると、CPU とメモリーは使用できる状態になっています。
I/O デバイスの場合、デバイスを使用できるようにするには、mount コマンドと ifconfig コマンドを使用する必要があります。ifconfig(1M) および mount(1M) を参照してください。
受容体の状態を connected に変更します。この機能は、システムボードスロットのみに適用されます。
ボードスロットがドメインに割り当てられていない場合、connect 機能は、ドメインへのスロットの割り当てを試みます。次に、ボードの電源を投入し、テストして、ボードをシステムバスに電気的に接続し、コンポーネントを調べます。
connect 機能が正常に完了したら、-a オプションを使用して、ボード上のコンポーネントのステータスを表示できます。connect 機能は、すべてのコンポーネントを unconfigured 状態のままにします。
割り当て手順は、ダイナミックシステムドメインをサポートするプラットフォームのみに適用されます。
ソフトウェアの状態の変更に関する制約を無効化します。
-f によって、ハードウェアおよびオペレーティングシステムの基本的な安全および可用性に関する制約が無効化されることはありません。
cfgadm(1M) で指定されている -s、-v、および -a の各オプションによって制御される形式で指定された接続点の状態や条件を一覧表示します。後述するように、cfgadm_sbd プラグインにより、info フィールドに固有の情報が示されます。この情報の形式は、-o parsable オプションによって変更できます。
構文解析可能な info フィールドは、次で構成されます。
cpu タイプでは、次の情報が表示されます。
ここで、# は数値であり、CPU の ID を表します。複数の # が存在する場合、この CPU には、複数のアクティブな仮想プロセッサがあります。
ここで、# は数値であり、CPU の速度を MHz で表します。
ここで、# は数値であり、外部キャッシュのサイズを M バイトで表します。CPU に複数のアクティブな仮想プロセッサがある場合、外部キャッシュは仮想プロセッサ間で共有されるか、仮想プロセッサ間で分割されます。
memory タイプでは、必要に応じて次の情報が表示されます。
ここで、# は数値であり、ベース物理アドレスを表します。
ここで、# は数値であり、メモリーのサイズを K バイトで表します。
ここで、# は数値であり、永続メモリーのサイズを K バイトで表します。
メモリーを構成解除できないようにするオペレーティングシステム設定です。
ボードが、ほかのボードとのインタリーブに参加しています。
ソースの接続点を表します。
ターゲットの接続点を表します。
ここで、# は数値であり、すでに削除されたメモリーの量を K バイトで表します。
ここで、# は数値であり、削除されるメモリーの量を K バイトで表します。
io タイプでは、次の情報が表示されます。
I/O コンポーネントの物理パスを表します。
I/O コンポーネントは参照されています。
board タイプでは、次のブール型の名前が表示されます。これらが存在しない場合は、反対の意味になります。
ボードがドメインに割り当てられています。
ボードに電源が投入されています。
-o parsable オプションを指定しない場合、info フィールドには、同じ項目がより読みやすい形式で表示されます。
ブール型の名前、または、スペース文字で区切られた一連の名前=値のペアとして info フィールドに情報を返します。
-o parsable オプションは、-s オプションと組み合わせて使用できます。-s オプションについては、cfgadm(1M) のマニュアルページを参照してください。
ボードをテストします。
ボードは、適切なレベルのテストをパスしなければ、接続できません。
このオプションを使用すると、適切なテストレベルをすでにパスしていても、必ずボードのテストが試みられます。-c connect 状態変更機能が発行されたときにもテストは実行されます。この場合で、ボードに適切なテストレベルがすでに示されているときは、テスト手順が省略されます。したがって、-t オプションを使用すると、ボードがテストされるように明示的に要求できます。
sbd クラス機能を実行します。次の機能を使用できます。
ドメインにボードを割り当てます。
受容体の状態は disconnected または empty である必要があります。また、ボードは、ドメインの使用可能なコンポーネントのリストに含まれている必要があります。「ダイナミックシステムドメイン」を参照してください。
ドメインからボードを割り当て解除します。
受容体の状態は disconnected または empty である必要があります。また、ボードは、ドメインの使用可能なコンポーネントのリストに含まれている必要があります。「ダイナミックシステムドメイン」を参照してください。
システムボードに電源を投入します。
受容体の状態は disconnected である必要があります。
システムボードの電源を切断します。
受容体の状態は disconnected である必要があります。
次のオペランドがサポートされています。
Sun Fire 15K などの Sun Fire ハイエンドシステムの場合は、受容体の接続点 ID は、SBX または IOX の形式をとります。ここで、X はスロット番号です。
正確な形式はプラットフォームによって異なり、通常は、マシン上の物理ラベルに対応します。「注意事項」の節のプラットフォーム固有の情報を参照してください。
コンポーネントの接続点 ID は、component_typeX の形式をとります。ここで、component_type は、「コンポーネントタイプ」で説明されているいずれかのコンポーネントタイプであり、X はコンポーネント番号です。コンポーネント番号は、ボードを基準としたユニット番号です。
上記の規則は、メモリーコンポーネントには適用されません。メモリーの接続点に対する DR 操作は、いずれもシステムボード上のすべてのメモリーに影響します。
次の例は、Sun Fire 15K システムでのユーザー入力とシステム出力を示しています。ユーザー入力 (具体的には、接続点に対する参照) とシステム出力は、6800 のような Sun Fire ミッドレンジシステムなどのほかの Sun Fire システムでは異なる場合があります。Sun Fire ハイエンドモデル以外での cfgadm_sbd プラグインの使用に関する具体的な情報については、プラットフォームにおける注意事項を参照してください。
例 1 すべてのシステムボードの一覧表示
# cfgadm -a -s "select=class(sbd)" Ap_Id Type Receptacle Occupant Condition SB0 CPU connected configured ok SB0::cpu0 cpu connected configured ok SB0::memory memory connected configured ok IO1 HPCI connected configured ok IO1::pci0 io connected configured ok IO1::pci1 io connected configured ok SB2 CPU disconnected unconfigured failed SB3 CPU disconnected unconfigured unusable SB4 unknown empty unconfigured unknown
この例は、次のそれぞれの状況を示しています。
スロット 2 のボードでテストが失敗しました。
スロット 3 は使用できないため、そのスロットにボードをホットプラグすることはできません。
例 2 システムボード上のすべての CPU の一覧表示
# cfgadm -a -s "select=class(sbd):type(cpu)" Ap_Id Type Receptacle Occupant Condition SB0::cpu0 cpu connected configured ok SB0::cpu1 cpu connected configured ok SB0::cpu2 cpu connected configured ok SB0::cpu3 cpu connected configured ok
例 3 CPU 情報フィールドの表示
# cfgadm -l -s noheadings,cols=info SB0::cpu0 cpuid 16, speed 400 MHz, ecache 8 Mbytes
例 4 構文解析可能な形式での CPU 情報フィールドの表示
# cfgadm -l -s noheadings,cols=info -o parsable SB0::cpu0 cpuid=16 speed=400 ecache=8
例 5 I/O ボード上のデバイスの表示
# cfgadm -a -s noheadings,cols=ap_id:info -o parsable IO1 IO1 powered-on assigned IO1::pci0 device=/devices/saf@0/pci@0,2000 referenced IO1::pci1 device=/devices/saf@0/pci@1,2000 referenced
例 6 構成解除操作の監視
次の例では、メモリーサイズが K バイトで表示されています。
# cfgadm -c unconfigure -y SB0::memory & # cfgadm -l -s noheadings,cols=info -o parsable SB0::memory SB1::memory address=0x0 size=2097152 permanent=752592 target=SB1::memory deleted=1273680 remaining=823472 address=0x1000000 size=2097152 source=SB0::memory
例 7 ドメインへのスロットの割り当て
# cfgadm -x assign SB2
例 8 ドメインからのスロットの割り当て解除
# cfgadm -x unassign SB3
属性についての詳細は、attributes(5) を参照してください。
|
インタフェースの安定性は開発中です。出力の安定性は不安定です。
cfgadm(1M), devfsadm(1M), ifconfig(1M), mount(1M), pbind(1M), psradm(1M), psrinfo(1M), config_admin(3CFGADM), attributes(5)
この節では、メモリーの削除操作の進行状況を監視する方法について説明しています。また、プラットフォーム固有の情報も示しています。
次のシェルスクリプトを使用すると、メモリーの削除操作の進行状況を監視できます。
# cfgadm -c unconfigure -y SB0::memory & # watch_memdel SB0 #!/bin/sh # This is the watch_memdel script. if [ -z "$1" ]; then printf "usage: %s board_id\n" `basename $0` exit 1 fi board_id=$1 cfgadm_info='cfgadm -s noheadings,cols=info -o parsable' eval `$cfgadm_info $board_id::memory` if [ -z "$remaining" ]; then echo no memory delete in progress involving $board_id exit 0 fi echo deleting target $target while true do eval `$cfgadm_info $board_id::memory` if [ -n "$remaining" -a "$remaining" -ne 0 ] then echo $deleted KBytes deleted, $remaining KBytes remaining remaining= else echo memory delete is done exit 0 fi sleep 1 done exit 0
Sun Enterprise 10000 システム上の接続点を参照するには、次の構文を使用します。
board::component
ここで、board はシステムボードを指し、component は個々のコンポーネントを指します。システムボードの範囲は、SB0 (ゼロ) から SB15 までです。最大で 16 枚のシステムボードを使用できます。
Sun Enterprise 10000 ドメインを実行している DR 3.0 モデルでは、cfgadm_sbd プラグインによって提供される機能の一部がサポートされます。サポートされる唯一の操作は、ドメイン内の接続点のステータスを表示することです。これは、-l オプションと、これに関連付けられているすべてのオプションに相当します。
ドメインからほかの操作を実行しようとすると、操作がサポートされていないことを示すエラーが表示されます。システムボードを追加または削除するすべての操作は、システムサービスプロセッサから開始する必要があります。
Sun Fire ハイエンドシステム上の接続点を参照するには、次の構文を使用します。
board::component
ここで、board はシステムボードまたは I/O ボードを指し、component は個々のコンポーネントを指します。
システムの構成に応じて、システムボードの範囲は SB0 (ゼロ) から SB17 までとなり、I/O ボードの範囲は IO0 (IO ゼロ) から IO17 までとなります (最大で 18 枚のシステムボードおよび I/O ボードを使用できます)。
Sun Fire ハイエンドシステムプラットフォームでは、-t オプションおよび -x オプションの動作が異なります。次の一覧で、これらの動作について説明します。
システムコントローラが、CPU を使用し、LPOST と hpost コマンドを順に実行して、システムボードをテストします。I/O ボードをテストするために、ドライバが -t オプションに応答してテストを開始すると、テストがユーザーの操作なしで自動的に実行されます。ドライバは、CPU および一続きの物理的に連続したメモリーを構成解除します。その後、システムコントローラにコマンドを送信し、ボードをテストします。システムコントローラが、トランザクション/エラーケージの内側から CPU とメモリーを使用して、I/O ボードをテストします。I/O ボードのテストに使用できるのは、(MCPU ボードではなく) システムボードの CPU だけです。
Sun Fire ハイエンドシステム管理モデルでは、各ドメインの使用可能なコンポーネントのリストを使用して、プラットフォーム管理者がプラットフォームハードウェアを制御します。この情報は、システムコントローラで保持されます。プラットフォーム管理者だけが、ドメインの使用可能なコンポーネントのリストを変更できます。
ドメイン管理者は、ボードがそのドメインの使用可能なコンポーネントのリストに含まれている場合にのみ、そのボードの割り当てまたは割り当て解除を行うことができます。プラットフォーム管理者にはこの制限はなく、ドメインの使用可能なコンポーネントのリストに含まれていない場合でも、ボードの割り当てまたは割り当て解除を行うことができます。
コンポーネントタイプの名前と説明を次に示します。
CPU
I/O デバイス
メモリー
注: メモリーコンポーネントに対する操作は、ボード上のすべてのメモリーコンポーネントに影響します。
6800、4810、4800、3800 システムなどの Sun Fire ミッドレンジサーバーと Sun Fire ハイエンドシステムでは、接続点への参照がわずかに異なります。Sun Fire 15K 以外の Sun Fire システム上の接続点を参照するには、次の構文を使用します。
N#.board::component
ここで、N# はノードを指し、board はシステムボードまたは I/O ボードを指し、component は個々のコンポーネントを指します。
システムの構成に応じて、システムボードの範囲は SB0 から SB5 までとなり、I/O ボードの範囲は IB6 から IB9 までとなります (最大で 6 枚のシステムボードと 4 枚の I/O ボードを使用できます)。
コンポーネントタイプの名前と説明を次に示します。
CPU
I/O デバイス
メモリー
注: メモリーコンポーネントに対する操作は、ボード上のすべてのメモリーコンポーネントに影響します。