1) CD-ROM 装置 (またはネットワーク) からシステムをブートします。
Solaris 10 の場合は 1a) の手順、Solaris 9 の場合は 1b) の手順に従ってブートを実施します。
1a) Solaris 10 の場合:
CD-ROM 装置からブートする場合
ok boot cdrom -s |
ネットワークからブートする場合
ok boot net -s |
1b) Solaris 9 の場合:
CD-ROM 装置からブートする場合
ok boot cdrom -as |
以下の対話処理を行ってください。
Fujitsu PRIMEPOWER 200 1x SPARC64-III 296MHz, No Keyboard OpenBoot 3.11 A.01, 256 MB memory installed, Serial #15809255. Ethernet address 0:80:17:28:3a:e7, Host ID: 80f13ae7. SCF Version: 2.1.E , RCI Version: 0001 Rebooting with command: boot cdrom -as Boot device: /pci@17,4000/scsi@3/disk@4,0:f File and args: -as Enter filename [kernel/unix]: Enter filename [kernel/sparcv9/unix]: Enter default directory for modules [/platform/FJSV,GPUS/kernel /platform/sun4us/kernel /kernel usr/ kernel]: Name of system file [etc/system]: /dev/null
~~~~~~~~~
SunOS Release 5.8 Version Generic_108528-09 64-bit
Copyright 1983-2001 Sun Microsystems, Inc. All rights reserved.
root filesystem type [ufs]:
Enter physical name of root device
[/pci@17,4000/scsi@3/disk@4,0:b]:
Configuring /dev and /devices
~ |
ネットワークからブートする場合
ok boot net0 -as |
以下の対話処理を行ってください。
Resetting ...
~
Executing last command: boot net0 -as
Boot device: /pci@83,4000/network@1,1 File and args: -as
2ac00 Enter filename [kernel/sparcv9/unix]:
Enter default directory for modules [/platform/FJSV,GPUSK/kernel /platform/sun4
us/kernel /kernel /usr/kernel]:
Name of system file [etc/system]: /dev/null
~~~~~~~~~
SunOS Release 5.8 Version Generic_108528-01 64-bit
Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved.
root filesystem type [nfs]:
Enter physical name of root device
[/pci@83,4000/network@1,1]:
root name:
whoami: no domain name
root name:
Configuring /dev and /devices
~ |
注意
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 装置 (またはネットワーク) からブートして不当な操作を行うと、ミラーリング状態が破壊される場合があります。必ず本手順に従って操作を行い、本手順にない操作はできるだけ避けてください。
復旧作業に伴い、物理スライス上のファイルシステムをマウントする場合には、不当な書込みを防ぐために、読取り専用でマウントすることを推奨します。
2) ルート (/)、/usr、/var ファイルシステムのリストア先となる物理スライスのデバイス名を確認します。
# eeprom nvramrc | grep sdx-root-slice
devalias sdx-root-slice-1 /devices/pci@1f,4000/scsi@3/sd@0,0:a,raw
devalias sdx-root-slice-2 /devices/pci@1e,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
devalias sdx-usr-slice-2 /devices/pci@1e,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
devalias sdx-var-slice-2 /devices/pci@1e,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
また、副となる物理スライスのデバイス名は以下のとおりです。
/ : /devices/pci@1e,4000/scsi@3/sd@0,0:a,raw
/usr : /devices/pci@1e,4000/scsi@3/sd@0,0:g,raw
/var : /devices/pci@1e,4000/scsi@3/sd@0,0:b,raw
注意
多重度 3 以上のミラーリング構成の場合、副側の物理スライスは複数存在します。
参考
/usr、/var ファイルシステムが存在しない構成の場合は、以下のように物理スライス名が表示されません。
# eeprom nvramrc | grep sdx-usr-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
~ |
3) 手順 2) で確認した物理スライスのデバイス名から、物理スライス名を確認します。
# 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@1e,4000/scsi@3/sd@0,0:a,raw
lrwxrwxrwx 1 root root 45 Oct 19 23:36 c1t0d0s0 -> ../../devices/pci@1e,4000/scsi@3/sd@0,0:a,raw # ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:g,raw # ls -l /dev/rdsk | grep /devices/pci@1e,4000/scsi@3/sd@0,0:g,raw
lrwxrwxrwx 1 root root 45 Oct 19 23:36 c1t0d0s6 -> ../../devices/pci@1e,4000/scsi@3/sd@0,0:g,raw # ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:b,raw # ls -l /dev/rdsk | grep /devices/pci@1f,4000/scsi@3/sd@0,0:b,raw |
grep コマンドの引数には、手順 2) で確認したデバイス名を指定します。
この例では、主側となる物理スライス名は以下のとおりです。
/ : c0t0d0s0
/usr : c0t0d0s6
/var : c0t0d0s1
また、副側となる物理スライス名は以下のとおりです。
/ : c1t0d0s0
/usr : c1t0d0s6
/var : c1t0d0s1
4) テープ媒体に採取されているバックアップデータを、それぞれの主側の物理スライスにリストアします。
例として、ufsdump(1M) コマンドで採取したバックアップデータを用いてリストアする手順を示します。
# newfs /dev/rdsk/c0t0d0s0 |
注意
主側の物理スライスへのリストアが I/O エラーなどによって失敗する場合は、副側の物理スライスへリストアしてください。
システムディスクをミラーリングする前に採取したバックアップデータを用いてリストアしないでください。
参照
ufsrestore(1M) コマンドの詳細については、Solaris のマニュアルを参照してください。使用方法やオプションの意味を確認し、適切なオプションを指定してください。
5) ブートブロックをシステムディスクのルートパーティションにインストールします。
# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0 |
6) ディスクのセクタサイズとシリンダサイズを調べて記録します。
# prtvtoc /dev/rdsk/c0t0d0s0 |
この例では、セクタサイズは 512 (バイト) = 1 (ブロック)、シリンダサイズは 512×4712 (バイト) = 4712 (ブロック) です。
7) ディスクの先頭セクタ (VTOC 域) を含む物理スライスを調べます。
prtvtoc(1M) コマンドの出力結果において First Sector フィールドが 0 の物理スライスが、ディスクの先頭セクタを含んでいます。
# prtvtoc /dev/rdsk/c0t0d0s0
~
* First Sector Last
* Partition Tag Flags Sector Count Sector Mount Directory
0 2 00 0 409656 409655
1 7 00 409656 307242 716897
2 5 00 0 4117568 4117567
3 3 01 737906 388648 1126553
4 33 00 716898 21008 737905
5 4 00 1126554 942734 2069287
6 4 00 2069288 2048280 4117567
~ |
この例では、Partition 0 の物理スライスが先頭セクタを含みます。
参考
Partition 2 はディスク全体に対応する特殊なパーティションです。
8) リストアが完了した主側の物理スライスから副側の物理スライスにデータをコピーします。
物理スライスがディスクの先頭セクタを含まない場合は 8a) の手順、物理スライスがディスクの先頭セクタを含む場合は 8b) の手順に従ってコピーを実施します。
注意
多重度 3 以上のミラーリング構成の場合、副側の物理スライスは複数存在します。すべての副側の物理スライスにデータをコピーしてください。
手順 4) においてリストアを行っていない主側のスライスのデータは、コピーする必要はありません。
8a) 物理スライスがディスクの先頭セクタを含まない場合:
コピー時間を短縮するために、dd(1M) コマンドの bs オプション (入出力ブロックサイズ) には、手順 6) で調べたシリンダサイズを指定します。
# dd if=/dev/rdsk/c0t0d0s6 of=/dev/rdsk/c1t0d0s6 bs=4712b |
8b) 物理スライスがディスクの先頭セクタを含む場合:
以下の手順を実施します。
8b-1) まず、物理スライスの先頭シリンダのみをコピーします。副側の先頭セクタ (VTOC 域) を上書きしないように先頭セクタをスキップし、セクタ単位にコピーします。
先頭セクタをスキップするため、dd(1M) コマンドの iseek オプションと oseek オプションには 1 を指定します。bs オプションには、手順 6) で調べたセクタサイズを指定します。count オプションには、手順 6) で調べたシリンダサイズ (単位はブロック) から 1 を引いた値を指定します。
# dd if=/dev/rdsk/c0t0d0s0 of=/dev/rdsk/c1t0d0s0 bs=512 iseek=1 oseek=1 count=4711 |
8b-2) 次に、物理スライスの残りのシリンダをコピーします。
コピー時間を短縮するために、dd(1M) コマンドの bs オプションには、手順 6) で調べたシリンダサイズを指定します。手順 8b-1) でコピーした先頭シリンダをスキップするため、iseek オプションと oseek オプションには 1 を指定します。
# dd if=/dev/rdsk/c0t0d0s0 of=/dev/rdsk/c1t0d0s0 bs=4712b iseek=1 oseek=1 |
9) システムをリブートします。
# shutdown -g0 -i6 -y |