ページの先頭行へ戻る
PRIMECLUSTER Global Disk Services 説明書 4.5
FUJITSU Software

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

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

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

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

説明

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

対処

第6章 バックアップとリストア」を参照してください。


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

説明

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

対処

ZFS ブート環境の場合は、「6.2.2 リストア手順」を参照してください。UFS ブート環境の場合は、「6.3.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) 正常にブートできた場合は、主ブートディスク装置の故障原因を調査して、ディスク交換などによる復旧を行ってください。

参照

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

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


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

注意

本トラブルシューティングは、UFSブート環境を対象としています。ZFSブート環境でシステムがブートできない場合は、以下を参照してください。

説明

システムディスクがミラーリングされていても、ブートに失敗する場合があります。すべてのブートディスクが物理的に故障(または故障したと想定)した場合に、復旧手順の確認を行いたい場合には、ディスクに格納されていたすべてのデータが失われてしまうため、以下の手順に従って復旧作業を行う必要があります。

対処

[事前作業]

システム構築時および運用前に、以下の作業を実施してください。


1) システムディスクのパーティション構成とシリンダサイズを調べて記録しておきます。

この作業は、システムディスクのミラーリングを設定する前に行う必要があります。以下に示すコマンドを実行し、下線部の情報を記録してください。

例:システムディスクが c4t50000394882261A0d0 である場合

# format c4t50000394882261A0d0
format> verify

Primary label contents:

Volume name = <00000000>
ascii name  = <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668>
pcyl        = 64988
ncyl = 64986
acyl = 2
nhead = 27
nsect = 668
Part Tag Flag Cylinders Size Blocks
0 root wm 1861 - 9302 64.00GB (7442/0/0) 134223912
1 swap wu 0 - 1860 16.01GB (1861/0/0) 33564996
2 backup wm 0 - 64985 558.89GB (64986/0/0) 1172087496
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 unassigned wm 0 0 (0/0/0) 0
7 unassigned wm 0 0 (0/0/0) 0

2) システムディスクに対して MPxIO が有効であるか確認して記録しておきます。

この作業は、システムディスクのミラーリングを設定する前に行う必要があります。

format(1M) コマンドの current サブコマンドを実行し、表示されるブートディスクの論理パス内に /scsi_vhci ディレクトリがある場合、MPxIO は有効です。

例:システムディスクが c0t50000394882261A0d0 である場合

# format c0t50000394882261A0d0
format> current Current Disk = c0t50000394882261A0d0: 00000000 <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668> /scsi_vhci/disk@g50000394882261a0 /dev/chassis/SYS/HDD0/disk

3) ルートファイルシステムなどのバックアップを採取しておきます。

この作業はシステムディスクをミラーリングした状態で行う必要があります。
バックアップの採取方法については、「6.3.1 バックアップ手順」を参照してください。

注意

  • 万一の故障に備えて、バックアップは定期的にとるようにしてください。

  • Solaris 10 では、カーネルパッチ版数によりリストア時にブートする OS を切り分ける必要があります。そのため、バックアップ採取時、以下のコマンドでシステムのパッチ適用状態を記録しておいてください。

    # /usr/bin/showrev -p

4) ルートクラスの名前を確認します。

ルートクラスの名前は、後の手順で使用します。全ブートディスク故障によりシステムがブートできない状態では、確認が困難であるため、事前に確認します。

sdxinfo -C を実行します。TYPE フィールドに "root" と出力される行の NAME フィールドが、ルートクラスの名前です。以下の例の場合、ルートクラスの名前は、 "RootClass" です。

# sdxinfo -C
OBJ NAME TYPE SCOPE SPARE ------- ---------- -------- ------------ ----- class RootClass root (local) 0 class class0001 local node1 0 class class0002 shared node1:node2 0


5) ルートクラスの物理ディスク名を確認します。

ルートクラスの物理ディスク名は、後の手順で使用します。全ブートディスク故障によりシステムがブートできない状態では、確認が困難であるため、事前に確認します。

sdxinfo -Dを実行します。手順4)で確認したルートクラスの名前を-cオプションで指定します。DEVNAM フィールドが、物理ディスク名です。以下の例の場合、ルートクラスの物理ディスク名は、 " c4t50000394882261A0d0"および" c4t5000039488226254d0" です。

# sdxinfo -D -c RootClass
OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS
------ ------- ------ ------- ------- ------- -------- ---------------- -------
disk rootDisk0001 mirror RootClass rootGroup c4t50000394882261A0d0 1172087496 node1 ENABLE
disk rootDisk0002 mirror RootClass rootGroup c4t5000039488226254d0 1172087496 node1 ENABLE

[復旧手順]

1) ルートクラスに登録されていた物理ディスクをすべて交換します。

交換作業は、各装置で定められた手順に従って実施してください。

注意

物理ディスクを交換せずに過去に GDS で使用していたディスクへリストアする場合には、CD-ROM 装置(またはネットワーク)からシステムを起動し、ルートクラスに登録されていた物理ディスクをすべて初期状態に戻します。CD-ROM 装置(またはネットワーク)からシステムを起動する方法については、手順2)を参照してください。

# format c0t0d0
format> type AVAILABLE DRIVE TYPES: 0. Auto configure ~ Specify disk type (enter its number)[14]: 0 c0t0d0: configured with capacity of 4.00GB <SUN4.2G cyl 3880 alt 2 hd 16 sec 135> selecting c0t0d0 [disk formatted] format> label Ready to label disk, continue? y format> quit

2) CD-ROM 装置(またはネットワーク)からシステムを起動します。

起動方法については、Solaris のマニュアルを参照してください。

注意

  • Solaris 10 (カーネルパッチ 137111-08 以前を適用済) をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS は、リストアする OS と同じバージョン (カーネルパッチ 137111-08 以前を適用済) にしてください。CD-ROM 装置からブートする場合は、Solaris 10 5/08 以前の媒体を使用してください。

  • Solaris 10 (カーネルパッチ 137137-09 以降を適用済) をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS は、リストアする OS と同じバージョン (カーネルパッチ 137137-09 以降を適用済) にしてください。CD-ROM 装置からブートする場合は、Solaris 10 10/08 以降の媒体を使用してください。

  • Solaris 11 をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS のバージョンは、リストアする OS と同じバージョンにしてください。

  • GDS でミラーリングしているシステムにおいて、CD-ROM 装置(またはネットワーク)からブートして本手順以外の操作を行うと、ミラーリング状態が破壊される場合があります。必ず本手順に沿って操作を行い、本手順にない操作はできるだけ避けてください。

  • 復旧作業に伴い、物理スライス上のファイルシステムをマウントする場合には、不当な書込みを防ぐために、読取り専用でマウントすることを推奨します。


参照

手順 2) から 5) の詳細については、Solaris のマニュアルを参照してください。


3) システムディスクを、[事前作業]の手順 1)で確認したパーティション構成に戻します。

注意

6Gbps SAS カードに接続している増設ファイルユニットのディスク、または、SPARC M12/M10、SPARC T4-4/T4-2/T4-1/T3-4/T3-2/T3-1 の内蔵ディスクの場合、手順1)で物理ディスクを交換したため、format コマンドで表示されるデバイス名は交換前のデバイス名と異なっています。format コマンドを実行し、出力されたデバイスに対してパーティションの設定を行います。

# format
Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t50000394882261A2d0 <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668> 00000000 /pci@8000/pci@4/pci@0/pci@0/scsi@0/iport@f/disk@w50000394882261a2,0 1. c0t50000394980066DEd0 <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668> 00000002 /pci@8000/pci@4/pci@0/pci@0/scsi@0/iport@f/disk@w50000394980066de,0 2. c0t500003948822616Ed0 <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668> 00000008 /pci@8000/pci@4/pci@0/pci@0/scsi@0/iport@f/disk@w500003948822616e,0 : 10. c1t500000E0D02C6286d6 <FUJITSU-ETERNUS_DXL-0000 cyl 2046 alt 2 hd 64 sec 256> 00E7002F /pci@8000/pci@4/pci@0/pci@8/QLGC,qlc@0/fp@0,0/ssd@w500000e0d02c6286,6format> partition Specify disk (enter its number): 2 selecting c0t500003948822616Ed0: 00000008 format> partition : partition> 0 Part Tag Flag Cylinders Size Blocks 0 root wm 0 0 (0/0/0) 0 Enter partition id tag[root]: root Enter partition permission flags[wm]: wm Enter new starting cyl[0]: 1861 Enter partition size[0b, 0c, 1861e, 0.00mb, 0.00gb]: 134223912b partition> 1 Part Tag Flag Cylinders Size Blocks 1 swap wu 0 0 (0/0/0) 0 Enter partition id tag[swap]: swap Enter partition permission flags[wu]: wu Enter new starting cyl[0]: 0 Enter partition size[0b, 0c, 0e, 0.00mb, 0.00gb]: 33564996b partition> label Ready to label disk, continue? y partition> quit format> verify Primary label contents: Volume name = <00000002> ascii name = <TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668> pcyl = 64988 ncyl = 64986 acyl = 2 nhead = 27 nsect = 668 Part Tag Flag Cylinders Size Blocks 0 root wm 1861 - 9302 64.00GB (7442/0/0) 134223912 1 swap wu 0 - 1860 16.01GB (1861/0/0) 33564996 2 backup wu 0 - 64985 558.89GB (64986/0/0) 1172087496 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0

4) テープ媒体などに採取されたバックアップデータを、それぞれの物理スライスへリストアします。

以下の例では、[事前作業]の手順 3) で ufsdump(1M) コマンドを使用して採取したバックアップデータを用いて、各ファイルシステムのデータをリストアします。

ufsrestore(1M) コマンドを使用し、テープデバイス /dev/rmt/0 のテープ媒体からリストアします。

以下は、s0 スライスに対するリストアの例です。s0 以外のスライスが存在する場合、それらのスライスもリストアしてください。

# newfs /dev/rdsk/c0t50000394980066DEd0s0
# mount -F ufs /dev/dsk/c0t50000394980066DEd0s0 /mnt
# cd /mnt
# ufsrestore rvf /dev/rmt/0
# rm restoresymtable
# cd /
# umount /mnt
# fsck /dev/rdsk/c0t50000394980066DEd0s0

5) ブートブロックをシステムディスクのルートパーティションにインストールします。

installboot コマンドを実行する際、/usr ファイルシステムが存在するスライスをマウントする必要があります。

6) 交換したシステムディスクをマウントします。/etc が別のパーティションに存在する場合は、これもルートファイルシステムのマウントポイントの配下に /etc としてマウントします。

# mount -F ufs /dev/dsk/c0t50000394980066DEd0s0 /mnt
# mount -F ufs /dev/dsk/c0t50000394980066DEd0s5 /mnt/etc

7) システムディスクのミラーリング設定を解除します。

/mnt/etc/system、/mnt/etc/vfstab、/mnt/kernel/drv/sfdsk.conf、/mnt/etc/opt/FJSVsdx/dev/devname.db を更新します。

7-1) システムディスクに対して MPxIO が有効であるか確認して記録しておきます。

format(1M) コマンドの current サブコマンドを実行し、表示されるブートディスクの論理パス内に /scsi_vhci ディレクトリがある場合、MPxIO は有効です。

例: システムディスクがc0t50000394882261A0d0である場合

# format c0t50000394882261A0d0
format> current
Current Disk = c0t50000394882261A0d0: 00000000
<TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668>
/scsi_vhci/disk@g50000394882261a0
/dev/chassis/SYS/HDD0/disk

7-2) /mnt/etc/system を編集します。

以下に例を示します。

# vi /mnt/etc/system
~ forceload: drv/sd forceload: drv/sfdsk rootdev:/pseudo/sfdsk@0:2,blk ←この行を削除する。

7-3) /mnt/etc/vfstab にあるルートクラスのパーティションのマウント設定行を、交換したシステムディスクのパーティションに合わせて編集します。

以下に例を示します。

注意

[事前作業] の手順2) で MPxIO が有効で、かつ、[復旧手順] の手順7-1) で MPxIO が無効である場合、現在の物理ディスク名 (cXtXdX) は [事前準備] で確認したシステムディスクから起動したときの物理ディスク名とは異なっています。この場合、/mnt/etc/vfstab には現在の物理ディスク名を記載してください。

7-4) /mnt/kernel/drv/sfdsk.conf から sysvol-db、SDX_DEV_TREE と記述された行をすべて削除します。

以下に例を示します。

# vi /mnt/kernel/drv/sfdsk.conf
# # Copyright (c) 1998, by Fujitsu, Ltd. # All rights reserved. # name="sfdsk" parent="pseudo"; sysvol-db0="sd","2"; ←この行を削除する。 sysvol-db1="sd","10"; ←この行を削除する。 sfdsk_root_volume=1; SDX_DEV_TREE_32_2="/scsi_vhci/disk@g50000394882261a0 (sd0)"; ←この行を削除する。 SDX_DEV_TREE_32_10="/scsi_vhci/disk@g5000039488226254 (sd1)"; ←この行を削除する。 ~

7-5) /mnt/etc/opt/FJSVsdx/dev/devname.db から、[事前作業] の手順 5) で確認したルートクラスの物理ディスク名を含む行を削除します。

以下に例を示します。

# vi /mnt/etc/opt/FJSVsdx/dev/devname.db
device_32_2="/dev/rdsk/c4t50000394882261A0d0s2"←この行を削除する。 device_32_10="/dev/rdsk/c4t5000039488226254d0s2"←この行を削除する。 device_118_2="/dev/rdsk/c4t600000E00D00000000002D1F00470000d0s2" ~

8) /mnt/kernel/drv/mpt_sas.conf ファイルを修正し、MPxIO が有効にならないようにします。

本手順は、[事前作業] の手順2) で MPxIO が有効で、かつ、[復旧手順] の手順7-1) で MPxIO が無効の場合のみ実行します。


9) 交換後のディスクのデバイス名を反映します。

本手順は、6Gbps SAS カードに接続している増設ファイルユニットのディスク、または、SPARC M12/M10、SPARC T4-4/T4-2/T4-1/T3-4/T3-2/T3-1 の内蔵ディスクの場合に必要です。

# cd /devices ; tar cf - . | ( cd /mnt/devices ; tar xf - )
# devfsadm -r /mnt -p /mnt/etc/path_to_inst

10) boot-archive ファイルを更新します。

# cd /
# /sbin/bootadm update-archive -R /mnt

11) マウントを解除します。

# umount /mnt/etc
# umount /mnt

12) 以下の手順で、交換したブートディスクからリブートします。

ブートディスクからリブートする手順は、6Gbps SAS カードに接続している増設ファイルユニットのディスク、または、SPARC M12/M10、SPARC T4-4/T4-2/T4-1/T3-4/T3-2/T3-1 の内蔵ディスクの場合と、それ以外の場合で異なります。

参照

SAN ブート環境の場合の手順は、以下のドキュメントを参照してください。

  • MPxIO を使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド (Leadvilleドライバ編)

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-8info/

  • ETERNUS マルチパスドライバを使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-4/


6Gbps SAS カードに接続している増設ファイルユニットのディスク、または、SPARC M12/M10、SPARC T4-4/T4-2/T4-1/T3-4/T3-2/T3-1 の内蔵ディスクの場合

12a-1) 交換したブートディスクのルートパーティションのスライス名を調べて記録します。

# ls -l /dev/dsk |grep c0t50000394980066DEd0s0
lrwxrwxrwx 1 root root 82 Sep 3 19:12 c0t50000394980066DEd0s0 -> ../../devices/pci@8000/pci@4/pci@0/pci@0/scsi@0/iport@f/disk@w50000394980066de,0:a

12a-2) ブートディスクの情報を調べて記録します。

情報の確認方法は、手順7-1) で MPxIO が有効だったかどうかによって異なります。

12a-3) OpenBoot 環境に移行します。

# halt

注意

復元用緊急起動ディスクから起動している場合は、shutdown(1M) コマンドを使用して OpenBoot 環境に移行してください。

12a-4) OpenBoot の boot-device プロパティを設定します。

手順 12a-2) で出力された obp-path のパラメタと、手順 12a-1) で出力されたスライス名(この例では :a )を連結して boot-device プロパティに設定します。

ok setenv boot-device /pci@8000/pci@4/pci@0/pci@0/scsi@0/disk@w50000394980066de,0:a

12a-5) OpenBoot の boot-device-index プロパティを 0 に設定します。

ok setenv boot-device-index 0

12a-6) システムの起動と再構成を行います。

ok boot -r

注意

ブート中に、以下の警告メッセージが出力される場合がありますが、システムへの影響はありません。現在のスワップ領域がダンプデバイスとして設定されます。ダンプデバイスの設定を変更したい場合は、dumpadm(1M) を使用してください。

savecore: open("/dev/sfdsk/System/dsk/swap"): No such file or directory
dumpadm: cannot use /dev/sfdsk/System/dsk/swap as dump device:
                           ファイルもディレクトリもありません。

上記以外のブートディスクの場合

12b-1) 交換したブートディスクのルートパーティションのデバイスパスを調べて記録します。

# ls -l /dev/dsk | grep c0t0d0s0
lrwxrwxrwx 1 root root 63 Aug 20 12:00 c0t0d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:a

12b-2) OpenBoot 環境に移行します。

# halt

注意

復元用緊急起動ディスクから起動している場合は、shutdown(1M) コマンドを使用して OpenBoot 環境に移行してください。

12b-3) OpenBoot 環境で show-devs コマンドを実行してデバイス名を表示します。

ok show-devs /pci@1f,4000/scsi@3
~ /pci@1f,4000/scsi@3/disk ~

12b-4) OpenBoot の boot-device プロパティを設定します。

12b-5) OpenBoot に boot-device-index プロパティがあるかどうか確認し、ある場合は boot-device-index プロパティを 0 に設定します。

ok printenv boot-device-index

boot-device-index プロパティがある場合は、"boot-device-index =数値" と表示されます。この場合は、以下のコマンドを実行します。

"boot-device-index =数値" と表示されない場合は、以下のコマンドは実行しないでください。

ok setenv boot-device-index 0

12b-6) システムをブートします。

ok boot

注意

ブート中に、以下の警告メッセージが出力される場合がありますが、システムへの影響はありません。現在のスワップ領域がダンプデバイスとして設定されます。ダンプデバイスの設定を変更したい場合は、dumpadm(1M) を使用してください。

savecore: open("/dev/sfdsk/System/dsk/swap"): No such file or directory
dumpadm: cannot use /dev/sfdsk/System/dsk/swap as dump device:
                           ファイルもディレクトリもありません。

13) 手順 8) で修正した /kernel/drv/mpt_sas.conf ファイルの内容を元に戻します。

本手順は、手順8) を実行した場合のみ実行します。


14) MPxIO を有効にするために以下のコマンドを実行し、システムを再起動します。

本手順は、手順13) を実行した場合のみ実行します。

# stmsboot -u

15) クラスタシステムである場合は、ルートクラスのクラスタリソースを削除します。

ここでの対象はルートクラスのみであり、ローカルクラスおよび共用クラスのクラスタリソースは削除しないでください。

以降では、以下のクラスが存在している場合の実行例を示します。

ルートクラスのクラスリソースが存在することを確認します。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -I
NAME SCOPE RID(RDB) RID(CDB) --------------- -------------------- --------------- --------------- RootClass node1 368 1 class0001 node1 369 2 class0002 node1,node2 371,372(370) 4,5(3) #

ルートクラスのクラスリソースが表示されない場合は、次の手順 16) に進みます。

ルートクラスのクラスリソースが表示された場合は、ルートクラスのクラスリソースを削除します。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -R -c RootClass
sdxdcrsc: RootClass removed #

ルートクラスのクラスリソースが削除されたことを確認します。

以下のコマンドを実行し、対象のクラス名が表示されないことを確認してください。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -I
NAME SCOPE RID(RDB) RID(CDB) --------------- -------------------- --------------- --------------- class0001 node1 369 2 class0002 node1,node2 371,372(370) 4,5(3) #

16) システムディスクのミラーリングを再設定します。

注意

システムディスクが壊れたという想定で本手順を実施した場合、つまり、手順 1) でディスクを交換しなかった場合は、ミラーリングの再設定時に、以下のようなエラーメッセージが出力される場合があります。

# sdxdisk -M -c System -a type=root -d c0t0d0=Root1:keep,c1t0d0=Root2:undef
SDX:sdxdisk: INFO: System: created class SDX:sdxdisk: ERROR: c1t0d0: already exists in ... SDX:sdxdisk: INFO: System: removed class #

上記のエラーが出力された場合は、システムを再起動してから、ミラーリングの再設定を実施してください。

参考

本手順を実施した際に手順の漏れや誤りがあった場合、ミラーリングの解除が不完全な状態になり、その後の再設定に失敗することがあります。

本手順を実施した後、または、再設定に失敗した後に、sdxrootck コマンドを使用して、解除が不完全な箇所と解除する方法を調べることができます。

参照

sdxrootckコマンドの詳細は、「F.3.2 sdxrootck - システムディスクミラーリングの解除の確認」を参照してください。


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

説明

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

対処

ZFS ブート環境の場合は、「6.2.2 リストア手順」を参照してください。UFS ブート環境の場合は、「6.3.3 リストア手順 (システムがブートできない場合)」を参照してください。


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

説明

システムディスクをミラーリングすると、システムのブートディスク装置名 (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 > /var/tmp/bootdevtab

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

# vi /var/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 つ出力される場合があります。その場合は、どちらか一方を削除し、正しい装置名に変更してください。

注意

  • 各フィールドはスペースまたはタブで区切ります。1 カラム目が # で始まる行はコメントとして扱われます。

  • 雛型には、ルートクラスに登録されている、すべてのディスクが出力されます。
    ブートディスクとして使用される可能性があるディスクを、bootdevtab ファイルで指定してください。以下のディスクが該当します。

    • 主ブートディスク

    • 副ブートディスク

    • ブートディスクのグループに接続されるスペアディスク

    • 代替ブート環境のブートディスクとスペアディスク
      (GDS Snapshot のシステムボリュームのスナップショット機能を使用する場合)

    また、以下のディスクは、bootdevtab ファイルで指定する必要はありません。bootdevtab ファイルから削除するかコメントにしてください。そのまま残しておいても影響はありません。

    • ブートディスクとして使用されないディスク

    • bootdevtab ファイルで指定しなくても、GDS が正しいブートディスク装置名を推定できたディスク

  • FC-AL 接続された内蔵ディスクは、ディスク交換するとブートディスク装置名が変わります。
    ディスク交換しても bootdevtab ファイルを再作成しなくてよいよう、以下のように指定してください。最後の @ の後に * を指定します。* の箇所は GDS が自動的に補完します。

    編集前:
    c0t0d0  /ssm@0,0/pci@1d,700000/SUNW,qlc@1/fp@0,0/ssd@w50020f230000798c,0
    
    編集後:
    c0t0d0  /ssm@0,0/pci@1d,700000/SUNW,qlc@1/fp@0,0/disk@*
  • MPLB ディスクの場合、各パスのブートディスク装置名を指定してください。

    編集前:
    # mplb0
    c12t16d0 /pci@1f,4000/fibre-channel@4/disk@10,0
    c13t16d0 /pci@1f,4000/fibre-channel@5/disk@10,0
    # mplb1
    c12t17d0 /pci@1f,4000/fibre-channel@4/disk@11,0
    c13t17d0 /pci@1f,4000/fibre-channel@5/dsik@11,0
    編集後:
    # mplb0
    c12t16d0 /pci@1f,4000/fibre-channel@4/sd@10,0
    c13t16d0 /pci@1f,4000/fibre-channel@5/sd@10,0
    # mplb1
    c12t17d0 /pci@1f,4000/fibre-channel@4/sd@11,0
    c13t17d0 /pci@1f,4000/fibre-channel@5/sd@11,0

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

# cd /etc/opt/FJSVsdx/lib
# mv bootdevtab bootdevtab.old (すでに bootdevtab ファイルが存在する場合)
# cp /var/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"
                          ↑正しいブートディスク装置名

(7) ZFS ブート環境でシステムがブートできない (ルートクラスの占有スライスの異常)

説明

何らかのトラブルによって、ルートクラスの占有スライスのデータが不当になり、システムが起動できなくなることがあります。

対処

参照

Solaris のコマンドの詳細については、Solaris のマニュアルを参照してください。

1) CD-ROM 装置(またはネットワーク)からシステムを起動します。

起動方法については、Solaris のマニュアルを参照してください。

注意

  • Solaris 10 (カーネルパッチ 137111-08 以前を適用済) をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS は、リストアする OS と同じバージョン (カーネルパッチ 137111-08 以前を適用済) にしてください。CD-ROM 装置からブートする場合は、Solaris 10 5/08 以前の媒体を使用してください。

  • Solaris 10 (カーネルパッチ 137137-09 以降を適用済) をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS は、リストアする OS と同じバージョン (カーネルパッチ 137137-09 以降を適用済) にしてください。CD-ROM 装置からブートする場合は、Solaris 10 10/08 以降の媒体を使用してください。

  • Solaris 11 をリストアする場合、CD-ROM 装置 (またはネットワーク、復元用緊急起動ディスク) からブートする OS のバージョンは、リストアする OS と同じバージョンにしてください。

  • GDS でミラーリングしているシステムにおいて、CD-ROM 装置(またはネットワーク)からブートして本手順以外の操作を行うと、ミラーリング状態が破壊される場合があります。必ず本手順に沿って操作を行い、本手順にない操作はできるだけ避けてください。

  • 復旧作業に伴い、物理スライス上のファイルシステムをマウントする場合には、不当な書込みを防ぐために、読取り専用でマウントすることを推奨します。


2) インポートできる ZFS ルートプールを構成するディスクを確認します。

# zpool import
pool: rpool ←ZFSルートプール名 id: ~ state: UNAVAIL status: One or more devices are missing from the system. action: The pool cannot be imported. Attach the missing devices and try again. see: http://www.sun.com/msg/ZFS-8000-6X config: rpool UNAVAIL missing device c0t0d0s2 ONLINE Additional devices are known to be part of this pool, though their exact configuration cannot be determined.

3) インポートする ZFS ルートプールが存在するディスクの、 s0 スライスのシンボリックリンクを作成します。

手順 2) で確認した ZFS ルートプールが存在するディスク(この例では c0t0d0s2 )について、s0 スライスのデバイス特殊ファイル(/dev/dsk/c0t0d0s0)のシンボリックリンクを作成します。

以下の例では、作業ディレクトリとして /tmp/work を使用します。

# mkdir /tmp/work
# ln -s /dev/dsk/c0t0d0s0 /tmp/work/c0t0d0s0

4) ZFS ルートプールをインポートします。

# zpool import -d /tmp/work rpool

注意

"cannot mount", "failed to create mountpoint"というメッセージが出力されることがありますが、次の手順 5) で正常にインポートされていることが確認できれば、問題ありません。

5) インポートした ZFS ルートプールの状態を確認します。

手順 3) で作成したシンボリックリンクのパスが config に表示されていること、state が ONLINE であること、エラーメッセージが表示されていないことを確認します。

# zpool status rpool
pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 /tmp/work/c0t0d0s0 ONLINE 0 0 0 errors: No known data errors

注意

ZFS ミラー方式でミラーリングしていた場合は、下記のように表示される場合があります。

# zpool status rpool
pool: rpool state: DEGRADED status: One or more devices could not be opened. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Attach the missing device and online it using 'zpool online'. see: http://www.sun.com/msg/ZFS-8000-2Q scrub: none requested config: NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 mirror DEGRADED 0 0 0 /tmp/work/c0t0d0s0 ONLINE 0 0 0 980382089098729109 UNAVAIL 0 0 0 errors: No known data errors

この場合には、手順 3) で選択したデバイス以外を detach した後、手順 3) で作成したシンボリックリンクのパスが config に表示されていること、state が ONLINE であること、エラーメッセージが表示されていないことを確認します。

# zpool detach rpool 980382089098729109
# zpool status rpool
pool: rpool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 /tmp/work/c0t0d0s0 ONLINE 0 0 0 errors: No known data errors

6) 復旧するルートファイルシステムを /mnt にマウントします。

6-1) 復旧するルートファイルシステムの mountpoint プロパティを / から /mntに変更します。

# zfs list
NAME USED AVAIL REFER MOUNTPOINT rpool 6.89G 881M 94K /rpool rpool/ROOT 5.53G 881M 18K legacy rpool/ROOT/s10s_u6wos_07b 5.53G 881M 5.39G / MOUNTPOINTが / のファイルシステムの名前を確認 # zfs set mountpoint=/mnt rpool/ROOT/s10s_u6wos_07b # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 6.89G 882M 94K /rpool rpool/ROOT 5.53G 882M 18K legacy rpool/ROOT/s10s_u6wos_07b 5.53G 882M 5.39G /mnt MOUNTPOINTが /mnt に変更されたことを確認 ~

6-2) 復旧するルートファイルシステムをマウントします。

# zfs mount rpool/ROOT/s10s_u6was_07b

7) /mnt/kernel/drv/sfdsk.conf から sysvol-db と記述された行をすべて削除します。

以下に例を示します。

# vi /mnt/kernel/drv/sfdsk.conf
# # Copyright (c) 1998, by Fujitsu, Ltd. # All rights reserved. # name="sfdsk" parent="pseudo"; sysvol-db0="sd","2"; ←この行を削除する。 sysvol-db1="sd","18"; ←この行を削除する。 sfdsk_root_volume=1;

8) /mnt/platform 配下に boot-archive ファイルがあるか確認し、ある場合は bootadm(1M) コマンドを実行し、boot-archive ファイルを更新します。

# ls /mnt/platform/`uname -m`/boot_archive
/mnt/platform/sun4u/boot_archive

boot-archive ファイルがある場合は、上記のようにファイル名が表示されます。

この場合は、以下のコマンドを実行します。その他の場合は、以下のコマンドは実行しないでください。

# /sbin/bootadm update-archive -R /mnt

9) 手順 6) でマウントしたルートファイルシステムをアンマウントし、mountpoint プロパティを / に戻してから、ZFSルートプールをエクスポートします。

# zfs unmount /mnt
# zfs set mountpoint=/ rpool/ROOT/s10s_u6wos_07b
# zpool export -f rpool

10) インポートしたZFSルートプールが存在するディスク(手順2)で確認したディスク)からシステムを起動します。

ブートディスクからリブートする手順は、以下の3つの場合で異なります。

参照

SAN ブート環境の場合の手順は、以下のドキュメントを参照してください。

  • MPxIO を使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド (Leadvilleドライバ編)

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-8info/

  • ETERNUS マルチパスドライバを使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-4/


12Gbps SASカードに接続されているディスクの場合

10a-1) リストア先のスライスのデバイスパスを確認します。

以下のコマンドを実行して、リストア先のスライスのデバイスパスを調べて記録します。

# ls -l /dev/dsk | grep c0t600000E00D0000000001060300040000d0s0
lrwxrwxrwx 1 root root 64 Feb 2 13:57 c0t600000E00D0000000001060300040000d0s0 -> ../../devices/scsi_vhci/disk@g600000e00d0000000001060300040000:a

10a-2) ブートディスクの情報を確認します。

以下のコマンドを実行して、リストア先のスライスのデバイスパスを調べて記録します。

# prtconf -v /dev/rdsk/c0t600000E00D0000000001060300040000d0s0
disk, instance #0 Driver properties: ~ Hardware properties: ~ Paths from multipath bus adapters: Path 33: /pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/iport@f0/disk@w500000e0d0460306,0
lsc#3(online) (*1) (*2)

(*1) diskノード名( この例では disk@w500000e0d0460306,0 )
(*2) SAS Address ( この例では 500000e0d0460306 )

注意

MPxIO が無効になっている場合、"Paths from multipath bus adapters:" という行は表示されません。


10a-3) OpenBoot 環境に移行します。

# shutdown -y -g0 -i0

10a-4) リストア先のディスクが接続されている SAS HBA のデバイスパスを確認します。

以下のコマンドを実行して、リストア先の SAS HBA のデバイスパスを確認します。

ok probe-scsi-all
/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0
(*1) FCode Version 1.00.65, MPT Version 2.05, Firmware Version 4.00.00.00 Target a Unit 0 Disk TOSHIBA MBF2300RC 3706 585937500 Blocks, 300 GB SASDeviceName 50000393d82956d4 SASAddress 500000e0d0460306 PhyNum 0 Target b (*2) Unit 0 Disk TOSHIBA MBF2300RC 3706 585937500 Blocks, 300 GB SASDeviceName 50000393d828bbfc SASAddress 500000e0da0cc620 PhyNum b ~ ok

(*1) デバイスパス
(*2) SAS Address ( 手順10a-2) の *2 で確認した SAS Address )


10a-5) boot-device プロパティを設定します。

手順10a-4) で確認したデバイスパスと、手順10a-2) diskノード名と、手順10a-1) で確認したスライス名を連結した値を、OBP の boot-device プロパティに設定します。

ok setenv boot-device /pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460306,0:a

10a-6) OpenBoot に boot-device-index プロパティがあるかどうか確認し、ある場合は boot-device-index プロパティを 0 に設定します。

ok printenv boot-device-index

boot-device-index プロパティがある場合は、"boot-device-index =数値"と表示されます。この場合は、以下のコマンドを実行します。

"boot-device-index =数値"と表示されない場合は、以下のコマンドは実行しないでください。

ok setenv boot-device-index 0

10a-7) システムをブートします。

ok boot

6Gbps SAS カードに接続されている増設ファイルユニットのディスク、または、SPARC M12/M10、SPARC T4-4/T4-2/T4-1/T3-4/T3-2/T3-1 の内蔵ディスクの場合

10b-1) 交換したブートディスクのルートパーティションのスライス名を調べて記録します。

[Solaris 11.3 以前の例]

# ls -l /dev/dsk | grep c0t5000CCA00AC113CCd0s0
lrwxrwxrwx 1 root root 48 4月 19日 14:21 c0t5000CCA0150FEA10d0s0 -> ../../devices/scsi_vhci/disk@g5000cca0150fea10:a

[Solaris 11.4 以降の例]

# ls -l /dev/dsk | grep c0t50000397683346A9d0s0
lrwxrwxrwx 1 root root 48 Jul 27 19:23 c0t50000397683346A9d0s0 -> ../../devices/scsi_vhci/disk@g50000397683346a9:a

10b-2) ブートディスクの情報を調べて記録します。

情報の確認方法は、OS のバージョンと、現在 MPxIO が有効になっているかどうかによって異なります。

MPxIO が有効になっているかどうかは、format(1M) コマンドの current サブコマンドで確認できます。ブートディスクの論理パス内に /scsi_vhci ディレクトリがある場合、MPxIO は有効です。

例:ブートディスクが c0t50000394882261A0d0 である場合

# format c0t50000394882261A0d0
format> current
Current Disk = c0t50000394882261A0d0: 00000000
<TOSHIBA-MBF2600RC-3706 cyl 64986 alt 2 hd 27 sec 668>
/scsi_vhci/disk@g50000394882261a0
/dev/chassis/SYS/HDD0/disk

[Solaris 11.3 以前の場合]

[Solaris 11.4 以降の場合]

10b-3) OpenBoot 環境に移行します。

# halt

注意

復元用緊急起動ディスクから起動している場合は、shutdown(1M)コマンドを使用してOpenBoot環境に移行してください。

10b-4) OpenBoot の boot-device プロパティを設定します。

[Solaris 11.3 以前の場合]

手順10b-2) で出力された obp-path のパラメタと、手順10b-1) で出力されたスライス名(この例では :a )を連結して boot-device プロパティに設定します。

ok setenv boot-device /pci@400/pci@2/pci@0/pci@e/scsi@0/disk@w5000cca0150fea11,0:a

[Solaris 11.4 以降の場合]

手順10b-2) で出力された ddi-boot-path のパラメタと、手順10b-1) で出力されたスライス名(この例では :a )を連結して boot-device プロパティに設定します。

ok setenv boot-device /pci@8000/pci@4/pci@0/pci@0/scsi@0/disk@w50000397683346aa,0:a

10b-5) OpenBoot に boot-device-index プロパティがあるかどうか確認し、ある場合は boot-device-index プロパティを 0 に設定します。

ok printenv boot-device-index

boot-device-index プロパティがある場合は、"boot-device-index =数値"と表示されます。この場合は、以下のコマンドを実行します。

"boot-device-index =数値"と表示されない場合は、以下のコマンドは実行しないでください。

ok setenv boot-device-index 0

10b-6) システムをブートします。

ok boot

注意

ブート中に、以下の警告メッセージが出力される場合がありますが、システムへの影響はありません。現在のスワップ領域がダンプデバイスとして設定されます。ダンプデバイスの設定を変更したい場合は、dumpadm(1M) を使用してください。

savecore: open("/dev/sfdsk/System/dsk/swap"): No such file or directory
dumpadm: cannot use /dev/sfdsk/System/dsk/swap as dump device:
                           ファイルもディレクトリもありません。

上記以外のブートディスクの場合

10c-1) 交換したブートディスクのルートパーティションのデバイスパスを調べて記録します。

# ls -l /dev/dsk | grep c0t0d0s0
lrwxrwxrwx 1 root root 63 Aug 20 12:00 c0t0d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:a

10c-2) OpenBoot 環境に移行します。

# halt

注意

復元用緊急起動ディスクから起動している場合は、shutdown(1M)コマンドを使用してOpenBoot環境に移行してください。

10c-3) OpenBoot 環境で show-devs コマンドを実行してデバイス名を表示します。

ok show-devs /pci@1f,4000/scsi@3
~ /pci@1f,4000/scsi@3/disk ~

10c-4) OpenBoot の boot-device プロパティを設定します。

10c-5) OpenBoot に boot-device-index プロパティがあるかどうか確認し、ある場合は boot-device-index プロパティを 0 に設定します。

ok printenv boot-device-index

boot-device-index プロパティがある場合は、"boot-device-index =数値"と表示されます。この場合は、以下のコマンドを実行します。

"boot-device-index =数値"と表示されない場合は、以下のコマンドは実行しないでください。

ok setenv boot-device-index 0

10c-6) システムをブートします。

ok boot

注意

ブート中に、以下の警告メッセージが出力される場合がありますが、システムへの影響はありません。現在のスワップ領域がダンプデバイスとして設定されます。ダンプデバイスの設定を変更したい場合は、dumpadm(1M) を使用してください。

savecore: open("/dev/sfdsk/System/dsk/swap"): No such file or directory
dumpadm: cannot use /dev/sfdsk/System/dsk/swap as dump device:
                           ファイルもディレクトリもありません。

11) システムディスクの占有スライスを削除します。

システムディスクのパーティション構成をprtvtoc(1M)コマンドで確認し、占有スライス(タグが33のスライス)が存在する場合は、sdxsystem Formatコマンドで削除します。

# prtvtoc /dev/rdsk/c0t0d0s2
# /etc/opt/FJSVsdx/bin/sdxsystem Format -d c0t0d0

12) システムディスクのミラー先だったディスクを初期化します。

# dd if=/dev/zero of=/dev/rdsk/c1t0d0s0 bs=1024k
# format -e

format -eコマンドでは、ミラー先だったディスク(c1t0d0)を選択し、"Disk not labeled. Label it now?"という問合せに対しyを入力します。


13) クラスタシステムである場合は、ルートクラスのクラスタリソースを削除します。

ここでの対象はルートクラスのみであり、ローカルクラスおよび共用クラスのクラスタリソースは削除しないでください。

以降では、以下のクラスが存在している場合の実行例を示します。

ルートクラスのクラスリソースが存在することを確認します。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -I
NAME SCOPE RID(RDB) RID(CDB) --------------- -------------------- --------------- --------------- System node1 368 1 class0001 node1 369 2 class0002 node1,node2 371,372(370) 4,5(3) #

ルートクラスのクラスリソースが表示されない場合は、次の手順 14) に進みます。

ルートクラスのクラスリソースが表示された場合は、ルートクラスのクラスリソースを削除します。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -R -c System
sdxdcrsc: System removed #

ルートクラスのクラスリソースが削除されたことを確認します。

以下のコマンドを実行し、対象のクラス名が表示されないことを確認してください。

# /etc/opt/FJSVsdx/bin/sdxdcrsc -I
NAME SCOPE RID(RDB) RID(CDB) --------------- -------------------- --------------- --------------- class0001 node1 369 2 class0002 node1,node2 371,372(370) 4,5(3) #

14) システムディスクのミラーリングを再設定します。

詳細は、「7.1.1 ZFS ブート環境のシステムディスクミラーリングの設定 (GDS ミラー方式)」または「7.2.1 ZFS ブート環境のシステムディスクミラーリングの設定 (ZFS ミラー方式)」を参照してください。

注意

ミラーリングの再設定時に、以下のようなエラーメッセージが出力される場合があります。

# sdxdisk -M -c System -a type=root -d c0t0d0=Root1:keep
SDX:sdxdisk: INFO: System: created class SDX:sdxdisk: ERROR: c0t0d0: already exists in ... SDX:sdxdisk: INFO: System: removed class #

上記のエラーが出力された場合は、システムを再起動してから、ミラーリングの再設定を実施してください。


(8) システムがブートできない (ufs ロギングのエラー)

説明

6.3.1 バックアップ手順」の「a) CD-ROM 装置 (またはネットワーク) からブートしてバックアップを行う場合」の方法でシステムディスク上の ufs ファイルシステムをバックアップする際に、手順 a1) のディスク切断操作を実行しなかった場合、OS 起動時に以下のようなエラーメッセージが出力され、OS が起動できないことがあります。

WARNING: Error processing ufs log data during scan 
WARNING: ufs log for /var changed state to Error 
WARNING: Please umount(1M) /var and run fsck(1M) 
WARNING: Error accessing ufs log for /var; Please run fsck(1M) 
mount: 入出力エラー 
mount: /dev/sfdsk/RootClass/dsk/varVolume をマウントできません。 
mount: mount-point /var/run does not exist.

対処

バックアップしたファイルシステムをリストアしてください。

リストア方法については、「6.3.2 リストア手順 (システムがブートできる場合)」または「6.3.3 リストア手順 (システムがブートできない場合)」を参照してください。

[説明] の操作を行っても、異常な現象がすぐには発生しないことがあります。
また、[説明] に示した OS のメッセージに従って fsck(1M) コマンドを実行すると、OS が起動できて一見復旧できたように見えることがあります。しかし、これらの場合も、ファイルシステムの内容やミラーの等価性は保証されません。

[説明] の操作を行った場合は、必ずファイルシステムをリストアしてください。


(9) システムが起動できない (ブートデバイスのエイリアス名の異常)

説明

システムディスクをミラーリングすると、OpenBoot の nvramrc 変数に、ブートデバイスのエイリアス(別名)が登録されます。nvramrc のバイト数の制約により、エイリアス名が正しく登録されないことがあります。この場合、エイリアス名を指定してシステムを起動すると、以下のエラーメッセージが出力され、システムを起動できません。

{0} ok boot sdx-boot-alt-device-32-2b
Boot device: /pci@8600/pci@4/pci@0/pci@9/LSI,sas@  File and args:
Boot load failed
ERROR: boot-read fail

対処

他のブートデバイスを指定するか、または、ブートデバイスのパスを指定して起動してください。

例1: 他のブートデバイスを指定して起動する場合

{0} ok printenv nvramrc
nvramrc =  devalias net /pci@8600/pci@4/pci@0/pci@11/network@0
           devalias disk /pci@8600/pci@4/pci@0/pci@9/LSI,sas@0/disk
           devalias sdx-root-slice-32-1
 /devices/scsi_vhci/disk@g600000e00d1100000010003101800000:a,raw
           devalias sdx-boot-device-32-1
 /pci@8600/pci@4/pci@0/pci@9/LSI,sas@0/disk@w500000e0d4003185,1:a
           ...

{0} ok boot sdx-boot-device-32-1

例2: ブートデバイスのパスを指定して起動する場合

{0} ok boot /pci@8600/pci@4/pci@0/pci@9/LSI,sas@0/disk@w500000e0d4003195,0:a