特記事項: Sun Enterprise 250 サーバー

第 3 章 論理デバイス名と物理デバイス名の対応

この章では、Solaris 2.x 環境が動作している Sun Enterprise 250 サーバーの内部ディスクドライブの識別に使用されている論理デバイス名から物理デバイス名を求める手順と、物理デバイス名から論理デバイス名を求める手順を説明します。

概要

Sun Enterprise 250 サーバーの本体には、UltraSCSI ディスクドライブを 6 台まで内蔵することができます。各ドライブには、0 〜 5 のドライブスロット番号が割り当てられています。

ディスクのホットプラグ手順を実行するには、障害の発生したディスクのスロット番号 (0 〜 5) と、ディスクの論理デバイス名 (c0t11d など) が必要です。この際、ドライブのスロット番号が特定されていれば論理デバイス名を調べることができ、また、その逆も可能です。また、物理デバイス名 (/devices/pci@1f,4000/scsi@3/sd@b,0 など) からドライブスロット番号と論理デバイス名の両方を調べることもできます。通常、ソフトウェアが生成した SCSI エラーメッセージには、そのような物理デバイス名が表示されます。

この章では、以下の手順を説明します。

SCSI エラーメッセージからドライブスロット番号と UNIX 論理デバイス名を求める手順

ここでは、SCSI エラーメッセージに表示される UNIX 物理デバイス名から、UNIX 論理デバイス名とドライブスロット番号を求める手順を説明します。

  1. SCSI エラーメッセージの中から UNIX 物理デバイス名を探します。

    通常、SCSI エラーメッセージはシステムコンソールに表示され、/usr/adm/messages ファイルに記録されます。


    WARNING: /pci@1f,4000/scsi@3/sd@b,0 (sd11)
    Error for Command: read(10)     Error level: Retryable
    Requested Block: 3991014        Error Block: 3991269
    Vendor: FUJITSU                 Serial Number: 9606005441
    Sense Key: Media Error
    ASC: 0x11 (unrecovered read error), ASCQ: 0x0, FRU: 0x0

    上記の SCSI エラーメッセージの例では、UNIX 物理デバイス名は /pci@1f,4000/scsi@3/sd@b です。

  2. /dev/rdsk ディレクトリの内容の一覧を表示し、UNIX 論理デバイス名を求めます。

    grep コマンドを使用して一覧出力をフィルタにかけ、手順 1 で求めた UNIX 物理デバイス名に一致するものを探してください。


    % ls -l /dev/rdsk | grep /pci@1f,4000/scsi@3/sd@b
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:a,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s1 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:b,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s2 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:c,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s3 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:d,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s4 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:e,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s5 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:f,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s6 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:g,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s7 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:h,raw

    この結果出力は、対応する UNIX 論理デバイス名を示します。この例では、論理デバイス名は c0t11d0 です。

  3. prtconf コマンドを使用してドライブスロット番号を求めます。

    手順 1 で求めた物理デバイス名の sd@ という文字列を disk@ に置き換えてください。この例では、結果は /pci@1f,4000/scsi@3/disk@b になります。

    grep コマンドを使用して、prtconf コマンドの出力からこの名前を探します。


    % prtconf -vp | grep /pci@1f,4000/scsi@3/disk@b
            disk4:  '/pci@1f,4000/scsi@3/disk@b,0'
                disk-slot4:  '/pci@1f,4000/scsi@3/disk@b'

    この結果出力は、対応するドライブスロット番号を示します。この例では、ドライブスロット番号は 4 です。

    出力にスロット番号がない場合は、デバイスは取り外し可能媒体デバイス (CD-ROM またはテープドライブ) か外部のデバイスです。

UNIX 論理デバイス名からドライブスロット番号を求める手順

ここでは、既知の UNIX 論理デバイス名 (c0t11d0s0 など) からドライブスロット番号 (0 〜 5) を求める手順を説明します。

この例では、既知の UNIX 論理デバイス名を c0t11d0s0 とします。

  1. UNIX 論理デバイス名から UNIX 物理デバイス名を求めます。

    ls -l コマンドを使用して、/dev/dsk ディレクトリにある論理デバイス名へのリンクを表示します。


    % ls -l /dev/dsk/c0t11d0s0
    lrwxrwxrwx   1 root     root         41 Nov 24 10:41 /dev/dsk/ c0t11d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:a

    この結果出力は、指定された論理デバイス名に対応する UNIX 物理デバイス名を示します。この例では、対応する物理デバイス名は /pci@1f,4000/scsi@3/sd@b です。

  2. prtconf コマンドを使用してドライブスロット番号を求めます。

    手順 1 で求めた物理デバイス名の sd@ という文字列を disk@ に置き換えてください。この例では、結果は /pci@1f,4000/scsi@3/disk@b になります。

    grep コマンドを使用して、prtconf コマンドの出力からこの名前を探します。


    % prtconf -vp | grep /pci@1f,4000/scsi@3/disk@b
            disk4:  '/pci@1f,4000/scsi@3/disk@b,0'
                disk-slot4:  '/pci@1f,4000/scsi@3/disk@b'

    この結果出力は、対応するドライブスロット番号を示します。この例では、ドライブスロット番号は 4 です。

    出力にスロット番号がない場合は、デバイスは取り外し可能媒体デバイス (CD-ROM またはテープドライブ) か外部のデバイスです。

ドライブスロット番号から UNIX 論理デバイス名を求める手順

ここでは、既知のドライブスロット番号 (0 〜 5) から、UNIX 論理デバイス名 (c0t11d0 など) を求める手順を説明します。

この例では、既知のドライブスロット番号を 4 とします。

  1. prtconf コマンドを使用して UNIX 物理デバイス名を求めます。

    grep コマンドを使用して prtconf の出力をフィルタにかけ、ドライブスロット番号に一致するものを探してください。


    % prtconf -vp | grep disk-slot4
                disk-slot4:  '/pci@1f,4000/scsi@3/disk@b'

    この例のドライブスロット番号 4 に対応する物理デバイス名は /pci@1f,4000/scsi@3/disk@b です。これを UNIX 物理デバイス名に変換するには、物理デバイス名の disk@ という文字列を sd@ に置き換えます。したがって、UNIX 物理デバイス名は /pci@1f,4000/scsi@3/sd@b になります。

  2. /dev/rdsk ディレクトリの内容の一覧を表示し、UNIX 論理デバイス名を求めます。

    grep コマンドを使用して一覧出力をフィルタにかけ、手順 1 で求めた UNIX 物理デバイス名に一致するものを探してください。


    % ls -l /dev/rdsk | grep /pci@1f,4000/scsi@3/sd@b
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:a,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s1 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:b,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s2 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:c,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s3 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:d,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s4 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:e,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s5 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:f,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s6 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:g,raw
    lrwxrwxrwx   1 root     root          45 Nov 24 10:41 c0t11d0s7 -> ../../devices/pci@1f,4000/scsi@3/sd@b,0:h,raw

    この結果出力は、対応する UNIX 論理デバイス名を示します。この例では、論理デバイス名は c0t11d0 です。