Solaris のシステム管理 (デバイスとファイルシステム)

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

この節では、cfgadm コマンドを使用してさまざまな SCSI ホットプラグ処理を実行する方法について説明します。


注 –

通常、SCSI フレームワークは SCSI デバイスのホットプラグ機能をサポートしています。ただし、使用している SCSI デバイスでホットプラグ機能がサポートされているかどうか、ハードウェアのマニュアルを参照して確認してください。


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

ProcedureSCSI デバイスに関する情報を表示する方法

次の手順では、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 コマンドを使用してください。


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

次の手順では、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

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

    構成解除処理が失敗した場合は、「失敗した SCSI 構成解除操作の解決方法」を参照してください。

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

次の手順では、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 バス上のすべてのデバイスを削除しました。この例では、すべてのデバイスをシステムに構成し直します。

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

次の手順では、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

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


注意 – 注意 –

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


次の手順では、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/c1t3d0       unavailable   disconnected configured   unknown
    c1::dsk/c1t4d0       unavailable   disconnected configured   unknown

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

ProcedureSPARC: 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/c1t3d0       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

ProcedureSPARC: 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 バスに取り付けます。

    1. 次の cfgadm コマンドを入力します。

      次に例を示します。


      # 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
    2. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。


      Continue (yes/no)? y
      SCSI bus quiesced successfully.
      It is now safe to proceed with hotplug operation.

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

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

    4. Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。


      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 に新しいディスクが取り付けられました。

ProcedureSPARC: 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 バス上のデバイスを、同じタイプの別のデバイスに交換します。

    1. 次の cfgadm コマンドを入力します。

      次に例を示します。


      # 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
    2. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。

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


      Continue (yes/no)? y
      SCSI bus quiesced successfully.
      It is now safe to proceed with hotplug operation.
    3. デバイスの電源を切ってから、そのデバイスを取り外します。

    4. 交換用のデバイスを取り付けます。そして、取り付けたデバイスの電源を入れます。

      交換用のデバイスは取り外したデバイスと同じタイプであり、同じアドレス (ターゲットと論理ユニット番号) でなければなりません。

    5. Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。


      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

ProcedureSPARC: 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 デバイスをシステムから取り外します。

    1. 次の cfgadm コマンドを入力します。

      次に例を示します。


      # 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
    2. Continue (yes/no)? というプロンプトに y と入力して、次に進みます。


      Continue (yes/no)? y
      SCSI bus quiesced successfully.
      It is now safe to proceed with hotplug operation.

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

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

    4. Enter y if operation is complete or n to abort (yes/no)? というプロンプトに y と入力します。


      Enter y if operation is complete or n to abort (yes/no)? y
      

    注 –

    この手順は、SCSI RAID デバイスを SCSI RAID アレイから取り外す場合に実行する必要があります。


  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

SCSI 構成に関する問題の障害追跡

この節では、SCSI 構成に関する問題の障害追跡を行うために、エラーメッセージとその解決策について説明します。SCSI 構成に関する問題の障害追跡の詳細は、cfgadm(1m) のマニュアルページを参照してください。

エラーメッセージ

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

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

解決方法

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

エラーメッセージ

cfgadm: Component system is busy, try again: failed to offline:
     device-path
          Resource              Information
     ------------------  --------------------------
     /dev/dsk/device-name   swap area
エラーの発生原因

cfgadm コマンドを使用して、スワップデバイス、専用のダンプデバイスなどのシステムリソースを取り外すと、システムリソースがアクティブな場合、このようなエラーメッセージが表示されます。

解決方法

指定されたデバイス上のスワップ領域の構成を解除してから、再度 cfgadm を実行します。

エラーメッセージ

cfgadm: Component system is busy, try again: failed to offline:
     device-path
          Resource              Information
     ------------------  --------------------------
     /dev/dsk/device-name   dump device (swap)
エラーの発生原因

スワップ領域上に構成されているダンプデバイスを取り外そうとしたか、置き換えようとしました。

解決方法

スワップ領域に構成されているダンプデバイスの構成を解除してから、再度 cfgadm を実行します。

エラーメッセージ

cfgadm: Component system is busy, try again: failed to offline:
     device-path
          Resource              Information
     ------------------  --------------------------
     /dev/dsk/device-name   dump device (dedicated)
エラーの発生原因

専用ダンプデバイスを取り外そうとしたか、置き換えようとしました。

解決方法

専用ダンプデバイスの構成を解除し、cfgadm 処理を再実行します。

Procedure失敗した SCSI 構成解除操作の解決方法

1 つ以上のターゲットデバイスが使用中である場合、および SCSI 構成解除操作が失敗した場合、次の手順を使用します。この手順を使用しないと、将来、このコントローラおよびターゲットデバイスの動的再構成操作が失敗し、dr in progress メッセージが表示されます。

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

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


    # cfgadm -c configure device-name