Solaris のシステム管理 (第 1 巻)

IA: cfgadm コマンドによる PCI ホットプラグ

この節では、別のホットプラグ処理について説明し、IA システム上で PCI アダプタカードをホットプラグする手順について説明します。

次の例では、簡潔にするため、PCI 接続点だけを表示しています。画面に表示される接続点はシステムによって異なります。

IA: PCI スロット構成情報を表示する方法

cfgadm(1M) コマンドは、システム上の PCI ホットプラグ可能なデバイスとスロットの状態を表示します。

  1. スーパーユーザーになります。

  2. PCI スロット構成情報を表示します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  connected    configured   ok
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
    # cfgadm -s "cols=ap_id:type:info" pci
    Ap_Id                Type         Information
    pci1:hpc0_slot0      unknown      Slot 7
    pci1:hpc0_slot1      unknown      Slot 8
    pci1:hpc0_slot2      unknown      Slot 9
    pci1:hpc0_slot3      ethernet/hp  Slot 10
    pci1:hpc0_slot4      unknown      Slot 11

論理 ap_idpci1:hpc0_slot0 は、ホットプラグ可能なスロット Slot 7 (このスロットの物理的な識別子) の 論理 ap_id です。構成要素 hpc0 はこのスロットのホットプラグ可能なアダプタカードを示し、pci1 は PCI バスのインスタンスを示します。Type フィールドは、スロット中の PCI アダプタカードのタイプを示します。

IA: PCI アダプタカードを取り外す方法

  1. スーパーユーザーになります。

  2. アダプタカードが入っているスロットを確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  connected    configured   ok
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  3. デバイスを開いているアプリケーションを停止します。

    たとえば、イーサネットカードの場合、ifconfig(1M) でインタフェースを無効にしてから、カードを引き抜きます。

  4. デバイスの構成を解除します。


    # cfgadm -c unconfigure pci1:hpc0_slot3   
    
  5. デバイスの構成が解除されていることを確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  connected    unconfigured unknown
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  6. スロットへの電源を切り離します。


    # cfgadm -c disconnect pci1:hpc0_slot3
    
  7. デバイスが切り離されていることを確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  disconnected unconfigured unknown
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  8. スロットのラッチを開いて、ボードを取り外します。

IA: PCI アダプタカードを取り付ける方法

  1. スーパーユーザーになります。

  2. ホットプラグ可能なスロットを確認して、ラッチを開きます。

  3. ホットプラグ可能なスロットにアダプタカードを挿入します。

  4. アダプタカードを挿入してラッチを閉じた後に、どのスロットにアダプタカードが入っているかを確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  disconnected unconfigured unknown
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  5. スロットへの電源を接続します。


    # cfgadm -c connect pci1:hpc0_slot3
    
  6. スロットが接続されていることを確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  connected    unconfigured unknown
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  7. PCI ホットプラグ可能なアダプタカードを構成します。


    # cfgadm -c configure pci1:hpc0_slot3
    
  8. スロット中のアダプタカードの構成を確認します。


    # cfgadm
    Ap_Id                Type         Receptacle   Occupant     Condition
    pci1:hpc0_slot0      unknown      empty        unconfigured unknown
    pci1:hpc0_slot1      unknown      empty        unconfigured unknown
    pci1:hpc0_slot2      unknown      empty        unconfigured unknown
    pci1:hpc0_slot3      ethernet/hp  connected    configured   unknown
    pci1:hpc0_slot4      unknown      empty        unconfigured unknown
  9. 新しいデバイスの場合、サポートソフトウェアを構成します。

    たとえば、イーサネットカードの場合、ifconfig(1M) でインタフェースを設定します。

IA: PCI 構成の障害対処

エラーメッセージ

cfgadm: Configuration operation invalid: invalid transition
原因

無効な移行を行いました。

解決方法

cfgadm -c コマンドが適切に発行されているかどうかを確認します。cfgadm で現在の受容体と占有装置の状態を確認し、ap_id が正しいことを確認します。

エラーメッセージ

cfgadm: Attachment point not found
原因

指定した接続点は見つかりません。

解決方法

接続点が正しいかどうかを確認します。cfgadm を使用して、利用可能な接続点のリストを表示します。また、物理パスを調べて、接続点が現在も残っているかどうかを確認します。


注 -

cfgadm コマンド以外にも、ホットプラグ処理中に便利なコマンドがいくつかあります。prtconf(1M) コマンドは、Solaris がハードウェアを認識するかどうかを表示します。ハードウェアの挿入後に prtconf コマンドを使用して、ハードウェアが認識されているかどうかを確認します。構成後に prtconf -D コマンドを使用して、新たにインストールしたハードウェアデバイスにドライバが設定されているかどうかを確認します。