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

第 25 章 デバイスの構成

この章では、Solaris 環境でデバイスを構成する手順について説明します。

この章の内容は次のとおりです。

デバイスにアクセスする方法については、第 26 章「デバイスへのアクセス (概要)」を参照してください。

システム構成要素がホットプラグ機能をサポートしている場合、Solaris 環境では、システムが動作しているときでも、デバイスを取り付け、取り外し、または交換できます。システム構成要素がホットプラグ機能をサポートしていない場合、システムをリブートしてデバイスを再構成しなければなりません。

システムへ周辺デバイスを追加する

新しい周辺デバイスを追加する場合、通常、次の作業が必要になります。

次のデバイスをシステムに追加するには、以下で説明する手順に従ってください。

場合によっては、新しいデバイスをサポートするために、サードパーティのデバイスドライバを追加しなければなりません。

周辺デバイスを追加する方法

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

  2. デバイスをサポートするためにデバイスドライバを追加する必要がある場合は、「デバイスドライバを追加する方法」の手順 2 と 3 を実行します。

  3. /reconfigure ファイルを作成します。


    # touch /reconfigure
    

    この /reconfigure ファイルがあると、Solaris ソフトウェアは、次にシステムに電源を入れたときまたはブートしたときに、新しくインストールされたデバイスがないかどうかをチェックします。

  4. システムをシャットダウンします。


    # shutdown -i0 -g30 -y
    

    -i0

    システムを init 0 状態に戻す。システムの電源を落としてデバイスの追加、削除を行うのに適した状態になる。 

    -g30

    システムを 30 秒以内にシャットダウンする。デフォルト値は 60 秒。 

    -y

    ユーザーの介入なしに、システムのシャットダウンを続ける。このオプションを指定しないと、シャットダウンプロセスを続けるかどうか、プロンプトでたずねられる。 

  5. システムがシャットダウンされたら、電源を落とします。

    SPARC システムの場合 

    IA システムの場合 

    ok または > プロンプトが表示されたら、電源を落としても安全。

    Type any key to continue プロンプトが表示されたら、電源を落としても安全。

    電源スイッチの位置については、各システムに添付のハードウェアマニュアルを参照してください。

  6. すべての外部デバイスの電源を落とします。

    周辺デバイスの電源スイッチの位置については、各自の周辺デバイスに添付のハードウェアマニュアルを参照してください。

  7. 周辺デバイスをインストールして、追加するデバイスのターゲット番号がシステム上の他のデバイスとは異なることを確認します。

    ディスクの裏側に小さいスイッチがあるはずです。

    デバイスの設置と接続については、周辺デバイスに添付のハードウェアマニュアルを参照してください。

  8. システムの電源を入れます。

    システムがブートされてマルチユーザーモードになり、ログインプロンプトが表示されます。

  9. 周辺デバイスにアクセスし、そのデバイスが追加されたことを確認してください。デバイスにアクセスする方法については、第 26 章「デバイスへのアクセス (概要)」を参照してください。

デバイスドライバを追加する方法

この手順では、デバイスがすでにシステムに追加されていることを前提としています。追加されていない場合は、「システムへ周辺デバイスを追加する」を参照してください。

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

  2. テープ、フロッピーディスク、または CD-ROM をドライブに入れます。

  3. ドライバをインストールします。


    # pkgadd -d device package-name
    

    -d device

    デバイスのパス名を指定する。 

    package-name

    デバイスドライバを含むパッケージ名を指定する。 

  4. pkgchk コマンドを使用して、パッケージが正しく追加されていることを確認します。パッケージが正しくインストールされている場合は、何も表示されません。


    # pkgchk packagename
    #

例 - デバイスドライバを追加する

次の例では、XYZdrv というパッケージをインストールして確認しています。


# pkgadd XYZdrv
(ライセンス関連のメッセージが表示される)
.
.
.
Installing XYZ Company driver as <XYZdrv>
.
.
.
Installation of <XYZdrv> was successful.
# pkgchk XYZdrv
#

動的再構成とホットプラグ機能

ホットプラグ機能とは、システムが動作しているときでも、システム構成要素を物理的に取り付け、取り外し、または交換できる機能のことです。動的再構成とは、システム構成要素をホットプラグできる機能であり、さらに、システム資源をシステムから物理的に取り外さなくても (なんらかの方法で) システム資源 (ハードウェアとソフトウェアの両方) をシステム内で移動したり、無効にしたりできる機能のことです。

今回のリリースの Solaris では、cfgadm コマンドを使用すると、SPARC と IA の両システムでは SCSI デバイスをホットプラグでき、IA のシステムでは PCI アダプタカードをホットプラグできます。cfgadm コマンドには次のような機能があります。

cfgadm コマンドでシステム構成要素を再構成する利点は、システムが動作しているときでも、システム構成要素を取り付け、取り外し、または交換できることです。さらに、cfgadm コマンドでは、システム構成要素を取り付け、取り外し、または交換するために必要な手順が示されます。SCSI 構成要素をホットプラグする手順については、cfgadm(1M) のマニュアルページと cfgadm コマンドによる SCSI ホットプラグ」を参照してください。IA のシステムにおいて PCI アダプタカードをホットプラグする手順については、「IA: cfgadm コマンドによる PCI ホットプラグ」を参照してください。


注 -

すべての SCSI と PCI のコントローラが cfgadm コマンドによるホットプラグ機能をサポートしているわけではありません。ホットプラグ機能をサポートしている PCI ハードウェアのリストについては、『Solaris 8 ハードウェア互換リスト (Intel 版)』を参照してください。


Sun が提供する高可用性の一部として、ホットプラグ機能は他の階層化製品 (代替パス指定やフェイルオーバーソフトウェアなど) とともに使用することをお勧めします。デバイス障害に対する耐性が高くなります。

高可用性ソフトウェアがなくても、障害が発生したデバイスを交換できます。この場合、適切なアプリケーションを手動で停止し、重要でないファイルシステムのマウントを手動で解除し、デバイスを取り付けまたは取り外します。

接続点

cfgadm コマンドは接続点についての情報を表示します。接続点とは、動的再構成を行うことができるシステム内の特定の場所のことです。

接続点は、次の要素から構成されています。

接続点は、論理と物理の両方の接続点 ID (ap_id) で表現されます。物理 ap_id は接続点の物理的なパス名です。論理 ap_id は物理 ap_id に代わるユーザーに理解しやすい ID です。ap_id についての詳細は、cfgadm(1M) のマニュアルページを参照してください。

通常、SCSI HBA (Host Bus Adapter)、つまり、SCSI コントローラの論理 ap_id はコントローラ番号 (c0 など) で表現されます。

コントローラ番号が SCSI HBA に割り当てられていない場合、内部的に生成された固有の識別子が提供されます。たとえば、SCSI コントローラの固有な識別子は次のようになります。

fas1:scsi

通常、SCSI デバイスの論理 ap_id は次のようになります。

HBA-logical-apid::device-identifier

次の例において、c0 は SCSI HBA の論理 ap_id です。

c0::dsk/c0t3d0

通常、デバイス識別子は /dev ディレクトリ内にある論理デバイス名から導き出されます。たとえば、論理デバイス名が /dev/rmt/1 のテープデバイスの論理 ap_id は次のようになります。

c0::rmt/1

SCSI デバイスの論理 ap_id を /dev ディレクトリ内にある論理デバイス名から導き出すことができない場合、内部的に生成された固有の識別子が提供されます。たとえば、上記テープデバイスの固有な識別子は次のようになります。

c0::st4

SCSI (デバイスの) ap_id についての詳細は、cfgadm_scsi(1M) のマニュアルページを参照してください。

cfgadm コマンドはすべての資源と動的再構成の操作を、一般的な状態 (configured、unconfigured など) や操作 (connect、configure、unconfigure など) を示す用語で表現します。一般的な状態と操作については、cfgadm(1M) のマニュアルページを参照してください。

次に、SCSI HBA 接続点の受容体と占有装置の状態を説明します。

受容体の状態 

説明 

占有装置の状態 

説明 

empty

SCSI HBA には利用できない。 

configured

1 つまたは複数のデバイスがバス上で構成されている。 

disconnected

バスは休止している。 

unconfigured

デバイスは構成されていない。 

connected

バスはアクティブである。 

 

 

次に、SCSI デバイス接続点の受容体と占有装置の状態を説明します。

受容体の状態 

説明 

占有装置の状態 

説明 

empty

SCSI デバイスには利用できない。 

configured

デバイスが構成されている。 

disconnected

デバイスは構成されていない。 

unconfigured

デバイスは構成されていない。 

connected

バスはアクティブである。 

 

 

SCSI 接続点の条件は特別なハードウェアによって示されない限り未知です。SCSI 構成要素の構成情報を表示する手順については、以降の節を参照してください。

IA: PCI アダプタカードの取り外し

デバイスドライバがホットプラグ機能をサポートしている場合、必須でないシステム資源として機能している PCI アダプタカードは取り外すことができます。重要なシステム資源として機能している PCI アダプタカードは取り外すことができません。PCI アダプタカードが取り外し可能であるためには、次の条件が必要です。

たとえば、システムにインストールされているイーサネットカードが 1 つしかない場合、ネットワーク接続を切断せずにこのイーサネットカードを取り外すことは不可能です。このような環境でネットワーク接続をアクティブに保ったままイーサネットカードを交換するには、別の階層化ソフトウェアサポートが必要です。

IA: PCI アダプタカードの取り付け

PCI アダプタカードをシステムに取り付けるには、次の条件が必要です。

PCI アダプタカードの取り付けまたは取り外しの手順については、「IA: cfgadm コマンドによる PCI ホットプラグ」を参照してください。

cfgadm コマンドによる SCSI ホットプラグ

この節では、cfgadm コマンドによるさまざまな SCSI ホットプラグ作業について説明します。

この節で説明する手順では、特定のデバイスを使用して、cfgadm コマンドで SCSI 構成要素をホットプラグする例を示します。cfgadm コマンドで提供されるデバイス情報や表示されるデバイス情報は、システム構成によって異なります。

すべてのデバイスの構成情報を表示する方法

SCSI コントローラ c0c1、およびこれらに接続されているデバイスを使用して、cfgadm コマンドで表示できるデバイス構成情報の例を示します。


注 -

SCSI デバイスが cfgadm コマンドでサポートされていない場合、その SCSI デバイスは cfgadm コマンドの出力には表示されません。


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

  2. システムの接続点についての情報を表示します。


    # cfgadm -l
    Ap_Id                Type         Receptacle   Occupant     Condition
    c0                   scsi-bus     connected    configured   unknown
    c1                   scsi-bus     connected    configured   unknown

    この例では、c0c1 は 2 つの SCSI コントローラを表しています。

  3. システムの SCSI コントローラとこれらに接続されているデバイスについての情報を表示します。


    # cfgadm -al 
    Ap_Id                Type         Receptacle   Occupant     Condition
    c0                   scsi-bus     connected    configured   unknown
    c0::dsk/c0t0d0       disk         connected    configured   unknown
    c0::rmt/0            tape         connected    configured   unknown
    c1                   scsi-bus     connected    configured   unknown
    c1::dsk/c1t3d0       disk         connected    configured   unknown
    c1::dsk/c1t4d0       unavailable  connected    unconfigured unknown

    注 -

    cfgadm -l コマンドは、SCSI デバイスではなく、SCSI HBA についての情報を表示します。ディスクやテープなどの SCSI デバイスについての情報を表示するには、cfgadm -al コマンドを使用してください。


次の例では、SCSI 接続点だけが表示されます。表示される接続点はシステム構成によって異なります。

SCSI コントローラの構成を解除する方法

SCSI コントローラ c1 を使用して、SCSI コントローラの構成を解除する例を示します。

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

  2. SCSI コントローラの構成を解除します。


    # cfgadm -c unconfigure c1
    
  3. SCSI コントローラの構成が解除されていることを確認します。


    # cfgadm -al
    Ap_Id                 Type         Receptacle   Occupant     Condition
    c0                    scsi-bus     connected    configured   unknown
    c0::dsk/c0t0d0        disk         connected    configured   unknown
    c0::rmt/0             tape         connected    configured   unknown
    c1                    scsi-bus     connected    unconfigured unknown

    Occupant の列に unconfigured と表示されていることに注目してください。これは、SCSI バスに占有装置が構成されていないことを示します。

SCSI コントローラを構成する方法

SCSI コントローラ c1 を使用して、SCSI コントローラを構成する例を示します。

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

  2. SCSI コントローラを構成します。


    # cfgadm -c configure c1
    
  3. SCSI コントローラが構成されていることを確認します。


    # cfgadm -al
    Ap_Id                Type         Receptacle   Occupant     Condition
    c0                   scsi-bus     connected    configured   unknown
    c0::dsk/c0t0d0       disk         connected    configured   unknown
    c0::rmt/0            tape         connected    configured   unknown
    c1                   scsi-bus     connected    configured   unknown
    c1::dsk/c1t3d0       disk         connected    configured   unknown
    c1::dsk/c1t4d0       unavailable  connected    unconfigured unknown

    前述の構成を解除する例では、SCSI バス上のすべてのデバイスを削除しました。この例では、すべてのデバイスをシステムに構成し直します。

SCSI デバイスを構成する方法

SCSI ディスク c1t4d0 を使用して、SCSI デバイスを構成する例を示します。

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

  2. 構成するデバイスを確認します。


     
    cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       unavailable   connected    unconfigured unknown
  3. SCSI デバイスを構成します。


    # cfgadm -c configure c1::dsk/c1t4d0
    
  4. SCSI デバイスが構成されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown

SCSI コントローラを切り離す方法

SCSI デバイスを切り離すときは十分に注意してください。特に、ルート (/)、usrvarswap パーティションなどの重要なファイルシステムが入っているディスクのコントローラを扱うときは細心の注意を払ってください。動的再構成ソフトウェアは、システムがハングする原因をすべて発見できるわけではありません。このコマンドを使用するときにも十分に注意してください。

SCSI コントローラ c1 を使用して、SCSI デバイスを切り離す例を示します。

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

  2. デバイスを切り離す前に、デバイスが接続されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown
  3. SCSI コントローラを切り離します。


    # cfgadm -c disconnect c1
    WARNING: Disconnecting critical partitions may cause system hang.
    Continue (yes/no)? y
    

    注意 - 注意 -

    このコマンドは、cfgadm -c connect コマンドを使用するまで、SCSI バス上のすべての入出力動作を中断します。cfgamd コマンドは基本的な検査を行い、重要なパーティションが切り離されるのを防ぎます。しかし、すべての場合を発見できるわけではありません。このコマンドの使い方が不適切な場合、システムがハングし、システムをリブートしなければならなくなる可能性もあります。


  4. SCSI 切り離されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   unavailable   disconnected configured   unknown
    c1::dsk/c1t10d0      unavailable   disconnected configured   unknown
    c1::dsk/c1t4d0       unavailable   disconnected configured   unknown

    コントローラとそれに接続されていたすべてのデバイスがシステムから切り離されました。

SCSI コントローラを接続する方法

SCSI コントローラ c1 を使用して、SCSI コントローラを接続する例を示します。

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

  2. 接続する前に、デバイスが切り離されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   unavailable   disconnected configured   unknown
    c1::dsk/c1t10d0      unavailable   disconnected configured   unknown
    c1::dsk/c1t4d0       unavailable   disconnected configured   unknown
  3. SCSI コントローラを接続します。


    # cfgadm -c connect c1
    
  4. SCSI コントローラが接続されていることを確認します。


    # cfgadm -al 
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown

SPARC: SCSI デバイスを SCSI バスに取り付ける方法

SCSI コントローラ c1 を使用して、SCSI デバイスを SCSI バスに取り付ける方法を説明します。


注 -

デバイスを取り付けるときは、デバイス自身の ap_id ではなく、デバイスを取り付ける SCSI HBA (コントローラ) の ap_id を指定します。


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

  2. 現在の SCSI 構成を確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
  3. SCSI デバイスを SCSI バスに取り付けます。


    # cfgadm -x insert_device c1
    Adding device to SCSI HBA: /devices/sbus@1f,0/SUNW,fas@1,8800000
    This operation will suspend activity on SCSI bus: c1
    Continue (yes/no)? y
    SCSI bus quiesced successfully.
    It is now safe to proceed with hotplug operation.
    Enter y if operation is complete or n to abort (yes/no)? y
    
    1. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。

      ホットプラグ処理の実行中、SCSI バス上の入出力動作は中断されます。

    2. デバイスを接続して、電源を入れます。

    3. 新しいデバイスを挿入した後、Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。

  4. デバイスが取り付けられていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown

    コントローラ c1 に新しいディスクが取り付けられました。

SPARC: SCSI コントローラ上の同一デバイスを交換する方法

SCSI ディスク c1t4d0 を使用して、SCSI コントローラ上の同一デバイスを交換する例を示します。

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

  2. 現在の SCSI 構成を確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown
  3. SCSI バス上のデバイスを、同じタイプの別のデバイスに交換します。


    # cfgadm -x replace_device c1::dsk/c1t4d0
    Replacing SCSI device: /devices/sbus@1f,0/SUNW,fas@1,8800000/sd@4,0
    This operation will suspend activity on SCSI bus: c1
    Continue (yes/no)? y
    SCSI bus quiesced successfully.
    It is now safe to proceed with hotplug operation.
    Enter y if operation is complete or n to abort (yes/no)? y
    
    1. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。

      ホットプラグ処理の実行中、SCSI バス上の入出力動作は中断されます。

    2. デバイスの電源を切ってから、そのデバイスを取り外します。交換用のデバイスを取り付けます。このデバイスは取り外したデバイスと同じタイプであり、同じアドレス (ターゲットと論理デバイス番号) でなければなりません。そして、取り付けたデバイスの電源を入れます。

    3. デバイスを交換した後、Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。

  4. デバイスが交換されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown

SPARC: SCSI デバイスを取り外す方法

次に、SCSI ディスク c1t4d0 を使用して、SCSI コントローラ上のデバイスを取り外す例を示します。

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

  2. 現在の SCSI 構成を確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown
    c1::dsk/c1t4d0       disk          connected    configured   unknown
  3. SCSI デバイスをシステムから取り外します。


    # cfgadm -x remove_device c1::dsk/c1t4d0
    Removing SCSI device: /devices/sbus@1f,0/SUNW,fas@1,8800000/sd@4,0
    This operation will suspend activity on SCSI bus: c1
    Continue (yes/no)? y
    SCSI bus quiesced successfully.
    It is now safe to proceed with hotplug operation.
    Enter y if operation is complete or n to abort (yes/no)? y 
    

    1. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。

      ホットプラグ処理の実行中、SCSI バス上の入出力動作は中断されます。

    2. デバイスの電源を切ってから、そのデバイスを取り外します。

    3. デバイスを取り外した後、Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。

  4. デバイスがシステムから取り外されていることを確認します。


    # cfgadm -al
    Ap_Id                Type          Receptacle   Occupant     Condition
    c0                   scsi-bus      connected    configured   unknown
    c0::dsk/c0t0d0       disk          connected    configured   unknown
    c0::rmt/0            tape          connected    configured   unknown
    c1                   scsi-bus      connected    configured   unknown
    c1::dsk/c1t3d0       disk          connected    configured   unknown

SPARC: SCSI 構成の障害対処

エラーメッセージ

cfgadm: Component system is busy, try again: failed to offline:
     device path
          Resource              Information
     ------------------  --------------------------
     /dev/dsk/c1t0d0s0   mounted filesystem "/file-system"
原因

ファイルシステムがマウントされているデバイスを取り外しまたは交換しようとしました。

解決方法

エラーメッセージのリストにあるファイルシステムのマウントを解除してから、もう一度 cfgadm コマンドを実行します。

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 コマンドを使用して、新たにインストールしたハードウェアデバイスにドライバが設定されているかどうかを確認します。