PRIMECLUSTER Global Disk Services 説明書 4.1 (Solaris(TM) オペレーティングシステム版)
目次 前ページ次ページ

付録F トラブルシューティング> F.1 トラブルへの対処方法

F.1.5 システムディスクに関する異常

/ (ルート)、/usr、あるいは /var といったファイルシステムが動作しているシステムディスクに関するトラブルへの対処方法について説明します。

以下に該当する場合は、それぞれに記載されている対処を行ってください。



 

(1) ルートファイルシステムなどのバックアップを採取する。

 

[説明]

システムディスクをミラーリングすることによって、一方の物理ディスクが故障したとしてもデータは保護されます。しかし、多重故障などによる致命的な障害や操作ミスによって破損されたデータを復元するためには、あらかじめバックアップを採取しておく必要があります。

[対処]

バックアップ手順」を参照してください。

 


 

(2) システムはブートできるが、システムディスクのデータが不当である。

 

[説明]

何らかのトラブルによって、システムディスクのデータが不当となり、あらかじめ採取されたバックアップデータをリストアすることによって、復旧しなければならない場合があります。

[対処]

リストア手順(システムがブートできる場合)」を参照してください。

 


 

(3) システムがブートできない(主ブートディスク装置の故障)。

 

[説明]

システムディスクがミラーリングされていても、ブートに失敗する場合がありえます。たとえば、ブートディスク装置内にあるブート中にアクセスされるファイルの一部が物理的に破壊されている場合、あるいは不当な手順によるディスク交換が行われた場合などが該当します。
失敗したブート中のコンソールメッセージなどを調査して、本現象と推測される場合には、ミラーリングしているもう一方のブートディスク、すなわち、副ブートディスク装置からのブートを試みてください。

 

[対処]

1) 副ブートディスク装置の名前を確認します。OpenBoot の ok プロンプトから、次の方法で確認できます。

ok printenv boot-device
/pci@1f,4000/scsi@3/disk@0,0:a /pci@1f,4000/scsi@3/disk@1,0:a

この例では、左端の/pci@1f,4000/scsi@3/disk@0,0:a が主ブートディスク装置名で、2番目の/pci@1f,4000/scsi@3/disk@1,0:a が副ブートディスク装置名です。
3 多重以上のミラー構成の場合、副ブートディスク装置は複数存在します。

 

2) 副ブートディスク装置からブートします。

 

ok boot /pci@1f,4000/scsi@3/disk@1,0:a

 

3) 正常にブートできた場合は、主ブートディスク装置の故障原因を調査して、ディスク交換などによる復旧を行ってください。


ディスク交換の手順については、「sdxswap - ディスクの交換」または「ディスク交換」を参照してください。

上記の手順で復旧できない場合は、主ブートディスク装置のデータ異常以外に原因があるか、あるいは副ブートディスク装置のデータも異常であることが考えられます。
副ブートディスク装置のデータも異常と思われる場合は、「システムがブートできない(ブートディスクのデータ破壊)」を参照してください。

 


 

(4) システムがブートできない(ブートディスクのデータ破壊)。

 

[説明]

何らかのトラブルによって、システムディスクのデータが不当となり、あらかじめ採取されたバックアップデータからの復旧が必要となる場合があります。
副ブートディスク装置からの復旧に失敗した場合は、以下の手順で復旧してください。

 

[対処]

リストア手順(システムがブートできない場合)」を参照してください。

 


 

(5) システムがブートできない(ブートディスク装置名の誤り)。

 

[説明]

システムディスクをミラーリングすると、システムのブートディスク装置名 (boot-deviceパラメタ)が自動的に設定および更新されます。しかし、一部のシステムでは、GDSが正しい装置名を認識することができないため、誤った装置名が設定されることがあります。
その場合、以下のコンソールメッセージが出力され、システムのブートに失敗します。

ok boot
Rebooting with command: boot
Boot device: /ssm@0,0/pci@18,700000/pci@1/scsi@2/sd@0,0:a File and args:
Evaluating: boot
Can't open boot device

この例ではブートディスク装置名として、/ssm@0,0/pci@18,700000/pci@1/scsi@2/sd@0,0:a が使用されていますが、正しい装置名は、/ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0:a であるため、ブートに失敗します。

 

[対処]

bootdevtab ファイル(ブートディスク装置名ファイル)を作成し、正しい装置名が設定されるようにします。

1) 正しいブートディスク装置名を指定して、システムをブートします。

ok boot /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0:a

正しいブートディスク装置名は、以下の方法で確認できます。

1-1) システムに接続されているディスク装置名を表示します。
後の手順で使用するために、結果を記録しておいてください。

ok show-disks


a) /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk
b) /ssm@0,0/pci@1c,700000/pci@1/scsi@2/disk
c) /ssm@0,0/pci@18,700000/pci@2/SUNW,isptwo@4/sd
d) /ssm@0,0/pci@1c,700000/pci@2/SUNW,isptwo@4/sd
q) NO SELECTION

Enter Selection, q to quit: q
ok

1-2) 表示結果のa)より、/ssm@0,0/pci@18,700000/pci@1/scsi@2/sd@0,0:a の正しいブートディスク装置名は、/ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0:a になります。

 

2) bootdevtab ファイルを作成します。

2-1) 雛型を作成します。

# sdxinfo -x BootDev > /tmp/bootdevtab

2-2) 雛型を編集します。

# vi /tmp/bootdevtab


編集前:
c0t0d0 /ssm@0,0/pci@18,700000/pci@1/scsi@2/sd@0,0
c1t0d0 /ssm@0,0/pci@1c,700000/pci@1/scsi@2/sd@0,0

編集後:
c0t0d0 /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0
c1t0d0 /ssm@0,0/pci@1c,700000/pci@1/scsi@2/disk@0,0

1 つ目のフィールドには、物理ディスク名を指定します。
2 つ目のフィールドには、対応するブートディスク装置名を指定します。いずれのフィールドも、パーティションの指定 (s0や:aなど) は不要です。

雛型には、GDSが推定したブートディスク装置名が出力されます。出力されたブートディスク装置名が誤っている場合は、正しい装置名に変更してください。正しい装置名は、1-1), 1-2) の手順で確認できます。また、ブートディスク装置名は 2 つ出力される場合があります。その場合は、どちらか一方を削除し、正しい装置名に変更してください。


2-3) 雛型を/etc/opt/FJSVsdx/lib ディレクトリに配置します。

# cd /etc/opt/FJSVsdx/lib
# mv bootdevtab bootdevtab.old (すでに bootdevtab ファイルが存在する場合)
# cp /tmp/bootdevtab bootdevtab
# chmod 600 bootdevtab


2-4) bootdevtabファイルが正しく作成されたことを確認します。

# sdxinfo -x BootDev

c0t0d0 /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0
c1t0d0 /ssm@0,0/pci@1c,700000/pci@1/scsi@2/disk@0,0

ブートディスク装置名が、正しく出力されることを確認します。

 

3) システムのブートディスク装置名(boot-deviceパラメタ)が正しく設定されることを確認します。

3-1) システムを停止し、正しいブートディスク装置名を指定してブートします。

# init 0


ok boot /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0:a

3-2) boot-deviceパラメタの設定を確認します。

# eeprom boot-device

boot-device=/ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@0,0:a \
/ssm@0,0/pci@1c,700000/pci@1/scsi@2/disk@0,0:a

boot-device パラメタには、等価性コピーが完了したブートデバイスの装置名が設定されます。等価性コピーが完了していない場合は、完了してから確認してください。

ルートクラスにディスクを追加し、そのディスクを bootdevtab ファイルで指定する必要がある場合は、ディスクをグループに接続する前に、2) の手順で bootdevtab ファイルを再作成してください。

そのディスクがグループに接続され等価性コピーが完了した時点で、boot-device パラメタに追加されます。

等価性コピーが完了するまでにbootdevtabファイルを再作成しなかった場合は、等価性コピーが完了した時点で、GDSが推定したブートディスク装置名がboot-deviceパラメタに追加されます。その場合は、bootdevtabファイルを再作成した後、以下の手順で、正しいブートディスク装置名を設定してください。または、システムをリブートすると、正しいブートディスク装置名が設定されます。

# eeprom boot-device
boot-device=... /ssm@0,0/pci@18,700000/pci@1/scsi@2/sd@1,0:a
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                ↑誤ったブートディスク装置名
# eeprom boot-device="... /ssm@0,0/pci@18,700000/pci@1/scsi@2/disk@1,0:a"
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                          ↑正しいブートディスク装置名



目次 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005