Solaris ボリュームマネージャーソフトウェアを使用したブートディスクのミラー化執筆者: Sivakanth Mundru 対象となる OS バージョン: Solaris 9 オペレーティングシステム (OS)、および、Solstice DiskSuite 4.2.1 ソフトウェア (108693-06 のパッチ適用) がインストールされた SPARC 版 Solaris 8 OS 注:この内容がそのまますべてのユーザーに対して機能するとは保証できません。必要に応じて調整してください。 以降の手順では、無作為にコントローラやターゲットを使用した可能性があります。これらはホストごとに異なる場合があります。 また、同じコントローラを介してミラー化を行うと、そのコントローラが引き続きシングルポイント障害となるので、代わりに、複数のコントローラを介してミラー化を行うとよいでしょう。 1) 重要な予防措置
作業を進める前に、 cp -p /etc/system /etc/system.orig."日付" cp -p /etc/vfstab /etc/vfstab.orig."日付"
/etc/system.orig."日付" 2) ルートディスクをミラー化するために、データの入っていない別のディスクを用意しておきます。 3) ボリュームデータベースを格納するために 25M バイト (10M バイトでも可) の小さいスライスをルートディスク上に作成し、ディスクにラベルを付けます。 ルートディスク上に空き領域がまったくない場合は、スワップ空間を削除してから追加し直すことによって、小さいスライスを作成します。 この作業を行う間、コンピュータ上で大量のアクティビティーが発生しないようにしてください。
3.1) (スワップとして設定されているスライスが複数ある場合に役立ちます。) 3.2) 次のコマンドを実行します。 swap -d swap-name ( /dev/dsk/c?ct?d?s?) 新しいスライスを組み込むために、パーティションテーブルを変更してスワップパーティションのサイズまたはシリンダ長を縮小します。 3.3) 次のコマンドを実行します。 swap -a swap-name ( /dev/dsk/c?t?d?s?)
4) ルートディスクとルートミラーとで、VTOC (ボリューム構成テーブル) は同じでなければなりません。 # prtvtoc /dev/rdsk/c?t?d?s2 | fmthard -s - /dev/rdsk/c?t?d?s2 5) ルートディスク上に作成した小さいスライスにメタデータベースを作成します。 # metadb -f -a -c3 c?t?d?s6 (このスライス 6 は私の小さいスライスです) # metadb -a -c3 c?t?d?s6 (ルートミラー上のスライス 6) 6) 次に、パーティションテーブル内のすべてのスライスに対して、それぞれミラーを作成します。 ルート (/) パーティションの場合は、次のようにします。 # metainit -f d10 1 1 c?t?d?s? # metainit d20 1 1 c?t?d?s? (メタデバイス d0 を作成し、サブミラーを 1 つ接続します) # metainit d0 -m d10 (ルート (/) メタデバイスのシステムファイルを設定します。つまり、/etc/system と /etc/vfstab に変更を加えます) # metaroot d0 # lockfs -fa (マウントされているすべての UFS ファイルシステムから不適切なファイルロックを消去します)
7) ほかのメタディスクの命名規則が続きます。(このソフトウェアをはじめて使用するユーザーへの注意:
サブミラーには、
スワップがパーティション/スライス 1 に存在する場合は、次のようにします。 # metainit -f d11 1 1 c?t?d?s1 # metainit d21 1 1 c?t?d?s1 # metainit d1 -m d11 8) ブートディスク上にあるすべてのファイルシステムに対して、同じ作業を繰り返します。
9)
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - ##/dev/dsk/c1t1d0s1 - - swap - no - /dev/md/dsk/d1 - - swap - no - /dev/md/dsk/d0 /dev/md/rdsk/d0 / ufs 1 no - ##/dev/dsk/c1t1d0s7 /dev/rdsk/c1t1d0s7 /export/home ufs 2 yes - /dev/md/dsk/d7 /dev/md/rdsk/d7 /export/home ufs 2 yes - ##/dev/dsk/c1t1d0s3 /dev/rdsk/c1t1d0s3 /opt/uc4 ufs 2 yes - /dev/md/dsk/d3 /dev/md/rdsk/d3 /opt/uc4 ufs 2 yes - swap - /tmp tmpfs - yes -
10)
11) set md:mirrored_root_flag=1 ルートディスクが使用できなくなると、ルートディスク上に格納されているデータベースのコピーも使用できなくなります。 Solaris ボリュームマネージャーソフトウェアでは、50 パーセントより多くのデータベースが使用可能であることを正常なブートアップの前提としており、そうでない場合はデータベースの複製の数が不足しているというエラーが発生することがあります。上記の変更を加えるのは、少なくとも 50 パーセントのコピーがあれば Solaris ボリュームマネージャーソフトウェアがブートアップできるからです。 12) 次のコマンドを実行します。 sync; sync; init 6 13) システムが起動したら、その他のサブミラーを接続します。 # metattach d0 d20 注:「metaattach」ではなく「metattach」です) # metattach d1 d21 以下同様に続けます。 14) ファイルシステムの同期が完了したかどうかを確認するには、次のコマンドを実行します。 metastat | grep progress 15) 主ブートデバイスとミラーブートデバイスの両方について、デバイスパスを調べます。 ls -l /dev/dsk/c1t1d0s0 /dev/dsk/c1t0d0s0 lrwxrwxrwx 1 root root 43 Dec 23 17:51 /dev/dsk/c1t0d0s0 -> \ ../../devices/pci@1c,600000/scsi@2/sd@0,0:a lrwxrwxrwx 1 root root 43 Dec 23 17:51 /dev/dsk/c1t1d0s0 -> \ ../../devices/pci@1c,600000/scsi@2/sd@1,0:a # eeprom "nvramrc=devalias rootdisk /pci@1c,600000/scsi@2/disk@1,0 devalias rootmirror /pci@1c,600000/scsi@2/disk@0,0"
( # eeprom "use-nvramrc?=true" boot-device の値を変更して、それらのブートデバイスのいずれかが使用できなくなった場合にシステムがミラーからのブートを試みるようにすることもできます。 # eeprom boot-device="rootdisk rootmirror net" 16) 同期が完了したら、ルートディスクを取り外してシステムをテストします。
Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License. |
BigAdmin SubscriptionsBigAdmin Areas
BigAdmin Sun Center
BigAdmin Topics | ||||||