ページの先頭行へ戻る
PRIMECLUSTERGlobal Disk Services 説明書 4.2

6.1.2 リストア手順 (システムがブートできる場合)

1) 動作中のアプリケーションプログラムを停止します。高い安全性が求められる場合は、システムディスクのバックアップを事前に採取してください。バックアップ手順については、「6.1.1 バックアップ手順」を参照してください。


2) 後でリストア先として使用するディスク以外をグループから切断して、グループに 1 つのディスクのみが接続されている状態にします。

例として、ディスク Root1 とディスク Root2 がグループ Group1 に接続されてミラーリングされていて、リストア先として Root1 を使用するために、Group1 から Root2 を切断する場合のコマンド行を示します。

# sdxdisk -D -c System -g Group1 -d Root2

グループ Group1 に接続されているディスク (GROUP フィールドに Group1 と表示されるディスク) が 1 つだけであることを確認します。

# sdxinfo -D -c System
OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------- ------ ------- ------- ------- -------- -------------- ------- disk Root1 mirror System Group1 c0t0d0 35368272 node1 ENABLE disk Root2 undef System * c1t0d0 35368272 node1 ENABLE

参考

ディスク Root1 上に INVALID 状態のスライスがある場合は、Root1 の方を切断してください。
keep タイプのディスクを切断した場合 (sdxinfo -D コマンドの出力のうち切断したディスクの TYPE フィールドの値が keep の場合) は、後でグループに接続できるように、タイプ属性を undef に変更してください (または、一旦クラスから削除してから、undef タイプのディスクとして登録しなおしてください)。ディスクのタイプ属性の変更方法は、「5.4.1 クラス構成」の「ディスク属性の変更」または「D.7 sdxattr - オブジェクトの属性値変更」を参照してください。

例) keep タイプのディスク Root1 を Group1 から切断した場合に、Root1 のタイプ属性を undef に変更する方法

# sdxattr -D -c System -d Root1 -a type=undef

参照

GDS 運用管理ビューを使用する場合は、「5.4 変更」の「5.4.2 グループ構成」を参照してください。

3) システムをシャットダウンします。

# shutdown -g30 -i0 -y

4) ルート (/)、/usr、/var ファイルシステムはシステム動作中にマウント解除できないため、CD-ROM 装置 (またはネットワーク) からシステムをブートします。

注意

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

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

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

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

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


5) ルート (/)、/usr、/var ファイルシステムのリストア先となる物理スライスのデバイス名を確認します。

# eeprom nvramrc | grep sdx-root-slice
devalias sdx-root-slice-1 /devices/pci@1f,4000/scsi@3/sd@0,0:a,raw
# eeprom nvramrc | grep sdx-usr-slice
devalias sdx-usr-slice-1 /devices/pci@1f,4000/scsi@3/sd@0,0:g,raw
	# eeprom nvramrc | grep sdx-var-slice
devalias sdx-var-slice-1 /devices/pci@1f,4000/scsi@3/sd@0,0:b,raw

この例では、物理スライスのデバイス名は以下のとおりです。

/ : /devices/pci@1f,4000/scsi@3/sd@0,0:a,raw
/usr : /devices/pci@1f,4000/scsi@3/sd@0,0:g,raw
/var : /devices/pci@1f,4000/scsi@3/sd@0,0:b,raw

参考

  • /usr、/var ファイルシステムが存在しない構成の場合は、以下のように物理スライスのデバイス名が表示されません。

    # eeprom nvramrc | grep sdx-usr-slice
    # eeprom nvramrc | grep sdx-var-slice
  • MPLB ディスクの場合、2 本目以降のパスの物理スライスのデバイス名は、以下の方法で調べることができます。ネットワークからブートした環境で、2 本目以降のパスが定義されていれば、そのパスの物理スライスにリストアすることも可能です。

    # eeprom nvramrc | grep sdx-root-slice  (1 本目のパス)
    devalias sdx-root-slice-1 /devices/pci@1f,4000/fibre-channel@4/sd@10,0:a,raw
    ~
    # eeprom nvramrc | grep sdx-root-alt-slice  (2 本目のパス)
    devalias sdx-root-alt-slice-1b /devices/pci@1f,4000/fibre-channel@5/sd@10,0:a,raw
    ~

6) 手順 5) で確認した物理スライスのデバイス名から、物理スライス名を確認します。

# ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:a,raw
lrwxrwxrwx 1 root root 45 Oct 19 23:36 c0t0d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:a,raw
# ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:g,raw
lrwxrwxrwx 1 root root 45 Oct 19 23:36 c0t0d0s6 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:g,raw
# ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:b,raw
lrwxrwxrwx 1 root root 45 Oct 19 23:36 c0t0d0s1 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:b,raw

grep コマンドの引数には、手順 5) で確認したデバイス名を指定します。

この例では、ルート (/)、/usr、/varの物理スライス名は、それぞれ、c0t0d0s0、c0t0d0s6、c0t0d0s1 です。


7) テープ媒体に採取されているバックアップデータを用いて、ルート (/)、/usr、/var ファイルシステムをリストアします。

例として、ufsdump(1M) コマンドで採取したバックアップデータを用いてリストアする手順を示します。

# newfs /dev/rdsk/c0t0d0s0
# mount -F ufs /dev/dsk/c0t0d0s0 /mnt
# cd /mnt
# ufsrestore rvf /dev/rmt/0
# cd /
# umount /mnt

# newfs /dev/rdsk/c0t0d0s6
# mount -F ufs /dev/dsk/c0t0d0s6 /mnt
# cd /mnt
# ufsrestore rvf /dev/rmt/0
# cd /
# umount /mnt

# newfs /dev/rdsk/c0t0d0s1
# mount -F ufs /dev/dsk/c0t0d0s1 /mnt
# cd /mnt
# ufsrestore rvf /dev/rmt/0
# cd /
# umount /mnt

注意

システムディスクをミラーリングする前に採取したバックアップデータを用いてリストアしないでください。

参照

ufsrestore(1M) コマンドの詳細については、Solaris のマニュアルを参照してください。使用方法やオプションの意味を確認し、適切なオプションを指定してください。

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

# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0

9) システムをリブートします。

# shutdown -g0 -i6 -y

10) 手順 2) で切断したディスクをグループに再接続します。

# sdxdisk -C -c System -g Group1 -d Root2

ディスク Root2 がグループ Group1 に接続されたこと (Root2 の行の GROUP フィールドに Group1 と表示されること) を確認します。

# sdxinfo -D -c System
OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------- ------ ------- ------- ------- -------- -------------- ------- disk Root1 mirror System Group1 c0t0d0 35368272 node1 ENABLE disk Root2 mirror System Group1 c1t0d0 35368272 node1 ENABLE

等価性コピーが自動的に行われ、等価性コピーが完了するとミラーリング状態が復旧されます。

参照

GDS 運用管理ビューを使用する場合は、「5.4 変更」の「5.4.2 グループ構成」を参照してください。

参考

手順 2) で keep タイプのディスクをグループから切断し、タイプ属性を undef に変更しなかった場合、手順 10) がエラーとなりエラーメッセージ "keep disk cannot be connected to existing group" が出力されます。この場合、ディスクのタイプ属性を undef に変更してから、手順 10) を再実行してください。

ディスクのタイプ属性の変更方法は、手順 2) の「参考」を参照してください。