Solstice Backup 5.1 障害復旧ガイド

第 1 章 概要

この章では、障害後のデータ復旧の準備をする際に役立つ概念、手順、情報を説明します。障害によって貴重なデータ、ディスク、またはシステム全体が破壊された場合に備えて、復旧するための計画を立てておくことが重要です。

障害の種類

一般に、発生するおそれのある障害としては、次の 4 種類があります。

障害への備え

重要なデータを毎日バックアップすることは必要ですが、その他に、ディスククラッシュや重要なデータ消失が起こったときにデータを復旧する手順を定め、それをテストしておくことも必要です。復旧方法の整備とテストに時間と労力をかければかけるほど、障害への備えがより強固になります。

障害復旧の要件

スケジュールされたバックアップ処理の中に Backup サーバーとクライアントのバックアップを組み込んであれば、障害への備えが確かなものとなります。サーバーをバックアップするごとに、ブートストラップと呼ばれる特殊なセーブセットが 1 つ作成されます。このブートストラップは、障害復旧には不可欠です。

ブートストラップ情報とともに、現在のネットワーク構成とシステム構成の正確な記録を保持し、さらにソフトウェアのオリジナルをすべて保存できる安全な場所を確保することが必要です。

破壊されたデータや失われたデータの重要性によって、とるべき作業数が決まります。最大規模の障害からの復旧の実施の場合には、次のものが必要です。

オペレーティングシステムをインストールし直さなければならないような障害から復旧するには、次の 2 つの方法があります。1 つはオペレーティングシステムのファイルをすべてインストールし直して、固有の構成をすべて作成し直します。もう 1 つは、オペレーティングシステムを部分的にインストールし直してシステムが機能するようになってから、Backup を使ってシステム構成ファイルを復旧します。オートチェンジャが設置されている場合は、復旧作業中にオートチェンジャを構成して使うか、あるいは、オートチェンジャにあるドライブを単にスタンドアロンデバイスとして使います。

重要な情報

この項で説明する手順によって、障害復旧に必要なブートストラップ情報と、ディスク構成情報を収集します。

ブートストラップ情報

スケジュールされたバックアップ処理においてサーバーをバックアップするたびに、ブートストラップと呼ばれる特殊なセーブセットが 1 つ作成されます。このブートストラップは、正しい障害復旧には不可欠です。ブートストラップには、Backup サーバーファイルインデックス、メディアデータベース、構成ファイルが入っています。


注意 - 注意 -

Backup がブートストラップ情報を保存するのは、スケジュールされたバックアップ処理の場合だけであり、手動バックアップの場合には保存されません。


Backup によって、日付、場所、セーブセット識別番号 (ID) から成る最新のブートストラップ情報が、印刷またはファイルに保存されます。スケジュールされたバックアップ処理が Backup によって行われるたびに生成されるブートストラップ情報の例を、例 1-1 に示します。ブートストラップ内容の印刷出力または電子的ファイルは、必ず安全な場所に保管しておいてください。

ブートストラップによって、前の月にバックアップされたブートストラップのセーブセットが一覧表示されます。次に例を示します。


例 1-1 ブートストラップ情報の例


August 20 03:30 1996 Backup bootstrap information Page 1
date    time    level   ssid            file    record  volume
8/19/96 2:29:08 9       1148868949      56      0       mars.005
8/20/96 2:52:25 9       1148868985      77      0       mars.001

Backup サーバーインデックスに対しては、savegrp コマンドを使って、スケジュールされたバックアップを行うこともできます。このコマンドは、また、プリンタまたは電子的ファイルに対してブートストラップ情報を送ります。次に、使用例を示します。


# savegrp -O -c server-name

savegrp -O コマンドを使うには、Backup サーバーでスーパーユーザーになっている必要があります。

ブートストラップデータを印刷またはファイルに保存する機能については、『Solstice Backup 5.1 管理者ガイド』を参照してください。

ブートストラップのセーブセット ID

ブートストラップをもっとも効率よく復旧するには、障害が起こる前にブートストラップ情報を保存しておきます。ただし、ブートストラップ情報が不明な場合は、最新のバックアップボリュームを探して、最新のブートストラップのセーブセット ID (または ssid) を見つけ出さなければなりません。scanner -B コマンドを使って、有効なブートストラップを探します。

ブートストラップの検索方法

最新の日付のブートストラップを検索したら、mmrecov コマンドを実行して、scanner コマンドによって表示されたセーブセットの ID とファイル番号を指定します。

最新のセーブセット ID は、次の手順で検索します。

  1. スケジュールされたバックアップ処理に使用した最新のメディアをサーバーデバイスに置きます。

  2. システムプロンプトで、最初に Backup をインストールしたディレクトリ (通常は /usr/sbin/nsr) に移動します。

  3. scanner -B コマンドを使って、メディア上の最新のブートストラップを検索します。次に例を示します。


    # /usr/sbin/nsr/scanner -B /dev/rmt/0hbn
    

    scanner -B コマンドによって、バックアップボリュームで検索された最新のブートストラップのセーブセット情報が次のように表示されます。


    scanner: scanning 8mm tape jupiter.001 /dev/rmt/0hbn
    
    scanner: Bootstrap 1148869870 of 8/21/96 7:45:15 located on volume
    jupiter.001, file 88

ディスク情報

重要なデータの消失から復旧するためには、さらに予防手段が必要です。つまり、障害復旧が起こる前に、ネットワーク上の各ディスクがどのようにパーティション分割され、フォーマットされているかを調べ、その情報を印刷して保存しておきます。障害によってディスクが損傷または破壊されたら、これらのディスク情報を使って、ディスクをディスククラッシュが生じる前の状態に作成し直します。各システムのディスクシステムとファイルシステムの配置がそれぞれ異なっている場合は、Backup で各システムをバックアップするたびに、同じ作業を繰り返します。


注意 - 注意 -

ディスク構成を作成し直す際に、復旧したデータをすべて収められるように、パーティションを大きくしなければならない場合があります。パーティションは、少なくともクラッシュの前と同じ大きさにします。


Backup サーバーのディスクがどのようにパーティション分割され、マウントされているかを調べるには、df を使います。ディスクのパーティション情報を印刷するには、それぞれのオペレーティングシステムの該当するコマンドを使います。ローカルなハードディスクを持っている Backup クライアントに対しても、同様の作業を行います。

df -k コマンドを使うと、次のような情報が得られます。


Filesystem            kbytes    used   avail capacity  Mounted on
/dev/dsk/c0t3d0s0     865678  624020  155098    80%    /
/dev/dsk/c0t1d0s6     265807  198729   40498    83%    /usr
/dev/dsk/c0t1d0s4      96103   57468   29025    66%    /var
swap                  107756       8  107748     0%    /tmp

次に、dkinfo コマンドの使用例を示します。SunOS システムでは、このコマンドを使って、各ディスクがどのようにパーティション分割されているかを知ることができます。


% dkinfo sd0a
	SCSI CCS controller at addr f8800000, unit # 24
	1151 cylinders 9 heads 80 sectors/track
	33120 sectors (46 cyls)
	starting cylinder 0
% dkinfo sd0b
	1151 cylinders 9 heads 80 sectors/track
	197280 sectors (274 cyls)
	starting cylinder 46

例 1-2prtvtoc コマンドの使用例は、Solaris システムで各ディスクがどのようにパーティション分割されているかを示しています。デバイス名には、df コマンドで出力されたディスク情報のデバイス名をそのまま使用します。


例 1-2 prtvtoc コマンドによる出力例


* /dev/dsk/c0t1d0s3 partition map
*
* Dimensions:
*     512 bytes/sector
*      80 sectors/track
*      17 tracks/cylinder
*    1360 sectors/cylinder
*    3500 cylinders
*    1965 accessible cylinders
*
* Flags:
*   1: unmountable
*  10: read-only
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
       2      5    00          0   2672400   2672399
       3      6    00          0   1434800   1434799   /export
       4      7    00    1434800    205360   1640159   /var
       5      6    00    1640160    463760   2103919   /opt
       6      4    00    2103920    568480   2672399   /usr

ディスクが損傷している場合は、これらのディスク情報表示用のコマンドで得られたハードコピー情報を使って、ディスクを復元し、ファイルシステムを元の状態に復旧することができます。

障害復旧方法の選択

オートチェンジャまたはスタンドアロンのドライブのいずれを使う場合でも、オぺレーティングシステムを復旧する場合は、いくつかの方法を選択できます。この項では、それらの方法の相違点を説明しますので、状況に応じて、もっとも適した方法を選択してください。

オペレーティングシステムの復元

障害復旧でオペレーティングシステムを復元するには、2 つの方法があります。全体的再インストールと部分的再インストールです。全体的再インストールでは、オペレーティングシステムのすべてのファイルをインストールして、データの消失またはディスククラッシュの発生以前にあった固有な構成をすべて作成し直します。部分的再インストールでは、十分に機能し得るネットワークシステムの作成に最低限必要な数のファイルだけをインストールおよび作成します。あとで Backup を使って、残りのオペレーティングシステムのファイルと構成ファイルを復旧します。

図 1-5 に、ディスククラッシュによってオペレーティングシステム、Backup ソフトウェア、サーバーインデックスファイル、および構成ファイルが失われた場合に復旧する手順を説明しています。また、この図では、オペレーティングシステムを再インストールするための 2 つの選択肢も説明しています。

図 1-5 ディスククラッシュによってオペレーティングシステムを消失した場合の復旧

Graphic

Backup サーバーと Backup クライアントとで、障害復旧方法はほとんど同じですが、クライアントシステムではサーバーインデックスと構成ファイルの復旧は不要という点が異なります。

全体的再インストール

場合によっては、たとえばオペレーティングシステムを CD からインストールしていて、作成し直すべき固有の構成が非常に少ない場合などには、オペレーティングシステムを全体的にインストールし直すほうが迅速に復旧できることがあります。部分的再インストールでは、使用しているバックアップデバイスとネットワークの速度によっては、Backup で残りのファイルと構成を復旧するのに、全体的再インストールよりも時間がかかる場合があります。

オペレーティングシステムによって直接サポートされていないデバイスをデフォルトの構成で使う場合は、インストールの際に、次のようにデバイスの構成ファイルを変更しなければなりません。

残りのデータを復旧する時点で、インストールし直したばかりのオペレーティングシステムのファイルを、Backup でバックアップされたオペレーティングシステムのファイルに置き換えるかどうかを決められます。障害以前と同じ構成に確実に戻したい場合には、再インストール時に作成したファイルと構成を元のものに置き換えます。

部分的再インストール

一方、部分的再インストールでは、Backup サーバーをすばやく起動できる場合があり、とりあえずサーバーの起動は済ませておいて、続けて障害復旧に専念できます。オペレーティングシステムの残りのファイルは、あとで Backup を使って復旧できます。構成作業が必要なクライアントとデバイスがネットワーク上に多数ある場合は、IP アドレスとホスト名を探して、構成を作成し直すのに時間がかかるので、部分的再インストールによって特に時間を節約できます。

さらに、オペレーティングシステムの残りのファイルを Backup で復旧できるようになってから、サーバー、クライアント、デバイスを障害発生前とまったく同じように構成し直すことができます。

部分的再インストールを選択すると、次の作業が必要になります。

全体的再インストールの場合も部分的再インストールの場合も、オペレーティングシステムをインストールし直したあと、tar コマンドを使って、テープドライブが正常に動作しているかどうかを検証します。

オートチェンジャ (ジュークボックス) による復旧

この項では、Backup サーバーインデックスと構成ファイルだけが失われる障害からの復旧に、オートチェンジャをどのように使うかを説明します。構成ファイルは、/nsr/res ディレクトリにあります。

構成ファイルには nsrjb.res ファイルも含まれており、このファイルにオートチェンジャの構成情報があります。

この項の説明では、本来のサーバー上にある Backup サーバーインデックスと構成ファイルが失われた場合、あるいは、Backup を新しいサーバーに移し、既存のインデックスファイルと構成ファイルをその新しいサーバー上に復旧する必要がある場合を想定しています。

詳細は、「システムと Backup ソフトウェアの復旧」「Backup インデックスと構成ファイルの復旧方法 」を参照してください。

インデックスと構成ファイルを復旧するプログラムでは、オートチェンジャを認識できません。したがって、オートチェンジャを復旧作業のそれぞれの部分を担当する 1 台のスタンドアロンドライブとして使う必要があります。必要なバックアップボリュームをマウントまたはマウント解除するには、オートチェンジャのコントロールパネルを使います。

インデックスと構成ファイルを復旧したら、元のオートチェンジャの構成ファイルがすべて本来の場所に戻ります。したがって、オートチャンジャを再び残りのデータの復旧に使うことができます。


注意 - 注意 -

保存日数が 30 日を超えるサーバーインデックスが失われずに残っている場合、障害復旧時にオートチェンジャを使うためには、サーバーとオートチェンジャをもう一度使用可能な状態に設定しなければなりません。


この項の後半では、オートチェンジャを使うか、またはオートチェンジャ内に設置されているドライブを使うかを選択する際の問題と、サーバーのインデックスと構成ファイルを復旧する方法を説明します。

オートチェンジャの追加と構成

オートチェンジャを使用しての復旧を選択した場合は、サーバーインデックスと構成ファイルを復元する前にデータを復旧するにあたり、次の点に留意してください。

オートチェンジャによる復旧方法

オートチェンジャを使って障害復旧を行う場合は、次の手順で進めます。

  1. 必要に応じて、オペレーティングシステムと Backup ソフトウェアをインストールし直します。

    インストールし直す場合、インデックスに対しては、前回のバックアップに使われたパス名を使います。

  2. jbconfig コマンドを使って、オートチェンジャを追加し、構成します。

  3. nsrjb -vHE コマンドを発行します。

    このコマンドを使って、操作用にオートチェンジャをリセットし、バックアップボリュームを取り出し、要素状態を初期化し直して、ボリューム用の各スロットを確認します。使用しているオートチェンジャで -E オプションがサポートされていなければ、sjiielm プログラム (/etc/LGTOuscsi/sjiielm パスなど) を使って要素状態を初期化します。

    ドライブにボリュームがロードされていれば、そのボリュームは取り除かれてスロットに置かれます。この操作が終わるまでに、数分かかります。

    エラーが出た場合、通常は無人デバイスが、ドライブから取り除いたばかりのボリューム用のスロットを探し出せないでいることを示します。いくつかのバックアップボリュームを移動させて、そのボリューム用の空きスロットをつくるか、可能な場合には、そのボリュームを機械式のアームから取り除いて、手動でスロットに置きます。

  4. 電子ファイルまたはハードコピーで、ブートストラップデータを探します。

    このデータによって、サーバーインデックスと構成ファイルの復旧に必要なボリューム (複数の場合もある) をつきとめます。

  5. nsrjb -I コマンドを入力して、オートチェンジャの内容のインベントリを作成します。これによって、ブートストラップの復旧に必要なボリュームがオートチェンジャ内にあるかどうかを判断できます。

    現在ドライブにロードされているボリュームに、最新のブートストラップがある可能性があります。

    この操作を速く終わらせたい場合は、-S フラグを使ってコマンドを発行し、必要なバックアップボリュームがあると思われるスロットだけを一覧表示させます。これで、オートチェンジャの内容全体のインベントリを作成せずにすみます。スロットは、たとえば nsrjb -I -S 1-3 のように、スロットの連番で一覧表示させます。また、たとえば 1、3、6 のようにとびとびの番号でスロットのインベントリを作成したい場合は、各スロットに対して、それぞれ nsrjb -I -S コマンドを使います。現在オートチェンジャにロードされているすべてのボリュームにアスタリスクが付けられますが、これは、メディアインデックスがまだ復旧されていないからです。

  6. 次のコマンドを入力して、該当するボリュームをロードします。


    # nsrjb -l -S slot -f device-name 
    

    slot は第 1 ボリュームが置かれているスロットの番号、device-name は第 1 ドライブのパス名です。「Backup Mount」ボタンを使うこともできます。

  7. mmrecov コマンドを入力します。

    ブートストラップが複数のボリュームにまたがっている場合は、次のバックアップボリュームをロードするようプロンプトが表示されます。

  8. インデックスが復旧されたら、次のように nsrjb -u コマンドを入力してボリュームのマウントを解除します。


    # nsrjb -u -S slot -f device-name 
    

    「Backup Unmount」ボタンを使うこともできます。

  9. Backup を停止します。

  10. 元のディレクトリ名 /nsr/res/nsr/res.orig に変更します。

  11. 復旧されたディレクトリ名 /nsr/res.R/nsr/res に変更します。

    /nsr/res ファイルを復旧して名前を変更したら、インストールし直してオートチェンジャを構成したときに作成した構成ファイルを取り替えます。この手順によって、障害発生前の前回のバックアップ時の構成をすべて復旧することができます。

  12. Backup を再起動します。

    サーバーインデックスと構成ファイルが復旧されたら、オートチェンジャは完全に機能できます。オートチェンジャの内容のインベントリを作成します。障害復旧の作業でボリュームを手動で動かした場合は、特にこの作業が必要です。

スタンドアロンドライブによる復旧

オートチェンジャ内にあるドライブを使用しての復旧を選択した場合は、インデックスと構成ファイルを復元する前にデータを復旧するにあたり、次の点に留意してください。

スタンドアロンドライブよる障害復旧方法

Backup サーバーのオートチェンジャ内のドライブを使って障害から復旧する場合は、次の手順で進めます。

  1. 必要に応じて、オペレーティングシステムと Backup ソフトウェアをインストールし直します。

    Backup ソフトウェアをインストールし直さなければならない場合、インデックスには前回のバックアップに使われたパス名を使います。

  2. 電子的ファイルまたはハードコピーで、ブートストラップデータを探します。

    このデータによって、サーバーインデックスと構成ファイルの復旧に必要なボリュームをつきとめます。

  3. 該当するボリュームを、手動でドライブにマウントします。

  4. mmrecov コマンドを入力します。

  5. Backup を停止します。

  6. 元のディレクトリ名 /nsr/res/nsr/res.orig に変更します。

  7. 復旧されたディレクトリ名 /nsr/res.R/nsr/res に変更します。

  8. Backup を再起動します。

  9. nsrjb -vHE コマンドを入力します。

    このコマンドを使って、操作用にオートチェンジャをリセットし、バックアップボリュームを取り出し、要素状態を初期化し直して、ボリューム用の各スロットを確認します。ドライブにボリュームがロードされていれば、そのボリュームは取り除かれてスロットに置かれます。この操作が終わるまでに、数分かかります。

  10. nsrjb -I コマンドを使ってオートチェンジャの内容のインベントリを作成します。管理者プログラムにある「Inventory」コマンドを使うこともできます。

    サーバーインデックスと構成ファイルを復旧すれば、オートチェンジャは完全に機能します。