目的
ボリューム・セット内のすべてのボリュームを復元します。
構文
backup volsetrestore [-name <volume set name>] [-file <file name>] [-portoffset <TC port offset>+] [-extension <new volume name extension>] [-n] [-localauth] [-cell <cell name>] [-help] backup vols [-na <volume set name>] [-f <file name>] [-p <TC port offset>+] [-e <new volume name extension>] [-n] [-l] [-c <cell name>] [-h]
構文
backup volsetrestore コマンドは、読み取り / 書き込みボリューム・グループの完全な内容をファイル・システムに復元します。このコマンドは、各ボリュームの最後のフル・ダンプと連続したすべてのインクリメンタル・ダンプからデータを復元します。これは、定義されたボリューム・セットを異なるサイトに復元できるので、複数の区画にあるデータ が消失した場合に有効です。
(指定されたポート・オフセットの /usr/afs/backup/CFG_device_name ファイルに FILE YES 命令がある場合、 backup volsetrestore コマンドは、磁気テープではなく、テープ・コーディネーターの /usr/afs/backup/tapeconfig ファイルのポート・オフセットにリストされているバックアップ・データ・ファイルからデータを復元します。説明を分かりやすくするために、以下では磁気テープ装置の場合について説明しますが、バックアップ・データ・ファイルの取り扱いは磁気テープ装置の場合とほとんど同じです。)
1 つ以上のボリュームを単一サイトのみに復元する場合には、 backup volrestore コマンドのほうが有効です。単一区画にあるボリュームをすべて復元する場合には、 backup diskrestore コマンドが有効です。
次のように、 -name 引き数または -file 引き数を使用して、復元するボリュームを指定してください。
ボリューム・セットがボリュームのバックアップに使用されているかどうか (backup dump コマンドに -volumeset オプションが使用されているかどうか) は関係ありません。ボリューム・セットは、このコマンドで復元される必要のあるボリュームに一致するよう、明示的に定義することができます。通常そちらを選択することをお勧めします。実際、backup addvolset コマンドに -temporary フラグを指定して作成された一時ボリューム・セットは、このような場合、特に便利です。一時ボリューム・セットは、バックアップ・システムには追加されず、現行のバックアップ・セッション中にのみ存在します。また、このコマンドで開始した単一の復元操作を完了するためにだけそのボリューム・セットが必要な場合に適しています。
特別に定義されたボリューム・セットの方が適している理由は、ダンプ操作で使用するために以前定義されたボリューム・セットが、通常バックアップ・バージョンのボリュームに一致するためです。これに対して、復元操作に使用する場合は、基本 (読み取り / 書き込み) 名に一致するボリューム項目を定義するのが最善の方法です。その場合、バックアップ・システムは、読み取り / 書き込みまたはバックアップのいずれかのダンプがある最新のダンプ・セットをバックアップ・データベースから検索します。逆に、ボリューム項目がボリュームのバックアップまたは読み取り専用バージョンと明示的に一致していると、バックアップ・システムは、一致しているボリューム・バージョンのダンプだけを復元します。
関連するボリュームのすべてのフル・ダンプおよびインクリメンタル・ダンプが、 1 つのテープ・コーディネーターで読み取り可能なタイプの磁気テープに書き込まれている場合には、 -portoffset 引き数を使用すると、複数のポート・オフセット番号を磁気テープが必要とされる順序で表示することができます (最初に、フル・ダンプのポート・オフセット番号が、次に、レベル 1 のインクリメンタル・ダンプのポート・オフセット番号、というように表示されます)。これは、関連するボリュームすべてのフル・ダンプが、最初にテープ・コーディネーターが読み取れる磁気テープに書かれていることを意味しています。複数の互換性のないタイプの磁気テープにダンプが作成されている場合には、 backup volrestore コマンドを使用して個々のボリュームを復元するか、ダンプが作成されているボリュームをまとめるボリューム・セットを互換性のある磁気テープ・タイプに定義してから、このコマンドを使用することができます。詳細については、AFS 管理の手引き を参照してください。
デフォルトでは、バックアップ・システムは、既存のボリュームの内容を、復元したデータで上書きします。復元したバージョンを保存するために新規のボリュームを作成するには、 -extension 引き数を使用します。バックアップ・システムは、指定された拡張子を読み取り / 書き込みの基本名に追加して新規のボリューム名とし、新規に VLDB 項目を作成します。このコマンドが、既存のボリュームに影響を与えることは全くありません。ただし、指定された拡張子がすでに存在する場合は、このコマンドはそれを上書きします。
-n フラグを付けると、 -n フラグを付けずにコマンドを発行したときに復元されるボリュームのリストが生成されます。実際の操作を行われません。このコマンド出力の詳細、および -file と -name 引き数とこのフラグの効果的な組み合わせ方法については、この解説ページの [出力] のセクションを参照してください。
backup volsetrestore コマンドの実行時間は、復元するボリュームの数とデータの量によって異なりますが、大容量のボリュームの場合、 1 時間ほどかかる場合があります。 -name 引き数にボリューム・セットを 1つだけ指定するか、引き数に異なるボリュームがリストされているファイルを -file 指定して、このコマンドの複数のインスタンスを当時に実行すると、この実行時間を短縮することができます。これを行うには、必要な磁気テープを読み取る複数のテープ・コーディネーターが使用可能でなければなりません。復元されるボリュームによって、ダンプされている磁気テープが異なるので、ボリューム・セットを個別に指定すると、磁気テープの交換回数を減らすことができます。
このコマンドを実行すると、デフォルトでは、テープ・コーディネーターは、ローカルの /usr/afs/backup/CFG_device_name ファイルの MOUNT 命令を呼び出して、最初に必要な磁気テープにアクセスします。MOUNT 命令がない場合には、磁気テープの挿入をバックアップ操作員に要求します。ただし、 CFG_device_name ファイルに AUTOQUERY NO 命令があるか、あるいは butc コマンドが -noautoquery フラグ付きで発行されている場合には、テープ・コーディネーターは、磁気テープがすでに装置に挿入されているとみなします。そうでない場合、あるいは間違った磁気テープが挿入されている場合には、テープ・コーディネーターは MOUNT 命令を呼び出すか、操作員にプロンプトを出します。また、復元操作で別の磁気テープが必要になった場合も、 MOUNT 命令を呼び出すか、バックアップ操作員にプロンプトを出します。この場合、操作員は、必要な磁気テープを挿入しなければなりません。
オプション
各ボリュームの項目は、ファイル内で次のように一行で記述されています。
machine partition volume [comments...]
ここで、
machine、partition、volume フィールドには、ワイルドカード (たとえば .*) を使用しないでください。ファイルの中で同じボリューム名を複数の行に指定することができますが、バックアップ・システムは、最初のボリュームしか処理しません。
すべてのダンプにデフォルトの 0 (ゼロ) が必要でない限り、この引き数を指定してください。 0 がリスト内の値の 1 つにすぎない場合は、正しい順序で明示的に指定してください。
出力
-n フラグを使用しないと、この操作の固有のタスク ID 番号が次のウィンドウに表示されます。
(backup) volsetrestore コマンドを対話モードで発行している場合には、タスク ID 番号は、(backup) jobs コマンドで表示されるジョブ ID 番号と一致しません。バックアップ・システムは、復元処理が実際に開始するまで、いずれの ID 番号も割り当てません。
-n フラグを付けると、タスク ID もジョブ ID も割り当てられていないので、これらの番号は表示されません。この場合、まず、復元されるボリューム数が表示され、次に、ボリュームの各ダンプが各行に表示されます。各行では、そのボリュームの最新のフル・ダンプが表示され、次にダンプ・レベルに従ってインクリメンタル・ダンプが表示されます。ただし、特定のボリュームの行がすべて表示されるとは限りません。
各行の形式は、以下のとおりです (ここで示した出力は、読みやすくするために 2 行で表示されています。)
machine partition volume_dumped # as volume_restored; tape_name (tape_ID); \ pos position_number; date
ここで、
-file 引き数への入力として使用するファイルを生成する 1 つの方法は、 One way to-name と -n オプションを組み合わせてファイルに出力することです。 AFS 管理の手引き の、バックアップ・システムを使用してデータを復元する方法を解説したセクションでは、ファイルを -file 引き数の入力として使用する前に、そのファイルを編集する方法について説明しています。
このコマンドの出力では、バックアップ・データベースに少なくとも 1 つのダンプが記録されているボリュームの情報だけが表示されます。 -file 引き数にファイルが指定されていたり、あるいは -name 引き数で指定されたボリューム・セットの項目が VLDB にある場合でも、ダンプ・レコードがなければ、コマンド・インタープリターは標準エラー・ストリームにメッセージを出力します。
例
次のコマンドは、data.restore という名前のボリューム・セットの項目に含まれているボリュームをすべて復元しています。このコマンドは、ソフトウェア・エラーによってすべてのデータが破壊されたファイル・サーバー・マシンの対にデータを復元しています。すべてのボリュームは、VLDB の項目に記録されているサイトに復元されます。
% backup volsetrestore -name data.restore Starting restore backup: task ID of restore operation: 112 backup: Finished doing restore
次のコマンドは、/tmp/restore というファイルに項目があるボリュームをすべて復元しています。
% backup volsetrestore -file /tmp/restore Starting restore backup: task ID of restore operation: 113 backup: Finished doing restore
/tmp/restore ファイルの内容は、次のとおりです。
fs1.abc.com b user.pat fs1.abc.com b user.terry fs1.abc.com b user.smith fs2.abc.com c user.jones . . . . . .
必要となる特権
コマンドの発行者は、バックアップ・サーバーまたはボリューム・ロケーション (VL) サーバーが実行されている各マシン上、および関連するボリュームのあるすべてのファイル・サーバー・マシン上の /usr/afs/etc/UserList ファイルにリストされていなければなりません。 -localauth フラグを使用する場合には、コマンドの発行者が、ローカル・スーパーユーザー root として、サーバー・マシンにログオンする必要があります。
関連情報