目的
ダンプを作成します (特定のダンプ・レベルのボリューム・セットのダンプを作成します)。
構文
backup dump [-volumeset <volume set name>] [-dump <dump level name>] [-portoffset <TC port offset>] [-at <Date/time to start dump>+] [-append] [-n] [-file <load file>] [-localauth] [-cell <cell name>] [-help] backup dump [-v <volume set name>] [-d <dump level name>] [-p <TC port offset>] [-at <Date/time to start dump>+] [-ap] [-n] [-f <load file>] [-l] [-c <cell name>] [-h]
構文
backup dump コマンドは、 -volumeset 引き数で指定されたボリューム・セットのダンプを -dump 引き数で指定されたダンプ・レベルで作成し、ダンプに関するダンプ・レコードをバックアップ・データベースに作成します。または、-file 引き数で指定されたファイルのダンプ命令を実行します。 -portoffset 引き数 (またはファイルの各コマンドで) 指定されたテープ・コーディネーターが操作を実行します。
(指定されたポート・オフセットに関連付けられたテープ・コーディネーター・マシン上の /usr/afs/backup/CFG_device_name ファイルに FILE YES がある場合、バックアップ・システムは、磁気テープではなく、テープ・コーディネーターの /usr/afs/backup/tapeconfig ファイルのポート・オフセットにリストされているバックアップ・データ・ファイルにデータのダンプを作成します。説明を分かりやすくするために、以下では磁気テープ装置の場合について説明しますが、バックアップ・データ・ファイルの取り扱いは磁気テープ装置の場合とほとんど同じです。)
ダンプの作成 という用語は、データのコレクションを磁気テープまたはバックアップ・データ・ファイルにコピーすることを意味します。また、結果的に作成されたコレクションのことをダンプ といいます。複数のダンプを含む磁気テープのセットをダンプ・セット といいます。ダンプ・セットの最初のダンプを初期ダンプ といい、ダンプ・セットに追加された後続のダンプ (-append 引き数を使用します) を追加ダンプ といいます。付加ダンプの作成はオプションです。付加ダンプは、初期ダンプと異なるボリューム・セットに作成することも、異なるダンプ・レベルに作成することもできます。
フル・ダンプ は、ダンプ階層のフル・ダンプ・レベルで作成されます。このダンプには、ダンプ作成時にボリューム・セットのボリュームに存在するすべてのデータが入ります。 インクリメンタル・ダンプ は、インクリメンタル・ダンプ・レベルで作成されます。このダンプには、インクリメンタル・ダンプの親ダンプ・レベル (階層内でインクリメンタル・ダンプのすぐ上のダンプ・レベル) でボリューム・セットのダンプが作成されてから変更されたデータだけが入ります。このダンプは、フル・ダンプ・レベルの場合も、インクリメンタル・ダンプ・レベルの場合もあります。さらに具体的にいえば、インクリメンタル・ダンプには、親ダンプ・レベルに含まれるボリュームの複製日よりも新しい修正タイム・スタンプを持つファイルとディレクトリーが含まれます。バックアップおよび読み取り専用ボリュームの場合、複製日は、ボリュームをダンプに組み込む前に、読み取り / 書き込みの送信元から複製した時刻です。読み取り / 書き込みボリュームの場合は、親ダンプに組み込むためにボリュームをロックした時刻を表します。複製日は、backup volinfo コマンドの出力の clone date フィールドに表示されます。たとえば、/full/week1/thursday レベルのインクリメンタル・ダンプには、 /full/week1 レベルでボリューム・セットのダンプが作成されてから変更されたファイルおよびディレクトリーだけが入ります。
異なるタイプのダンプ操作を開始する場合
関連するテープ・コーディネーターが使用可能になってすぐにダンプ操作を開始する場合には、 -volumeset、 -dump、-portoffset オプションをだけを指定します。必要であれば、-append オプションを指定することもできます。単一の backup dump コマンドを後で実行するようにスケジュールする場合には、 -at 引き数に開始時刻を指定することができます。
既存のダンプ・セットにダンプを付加する場合には、 -append フラグを使用します。付加ダンプの場合、バックアップ・システムは次の条件を前提とします。
複数のダンプ操作をスケジュールする場合には、 -file 引き数で指定したファイルに、操作をリストします。必要であれば、-at 引き数を使用して、 backup コマンド・インタープリターがファイルを読み取る時刻を指定することができます。この引き数を使用しないと、すぐにファイルの読み取りが開始します。 -file 引き数は、このコマンドの最初の 3 つの引き数、-append、または -n フラグと一緒に使用することはできません。ファイルに指定するコマンドでは、 backup dump コマンドのどの引き数でも使用することができます。 -at 引き数を使用して、ダンプを後で実行するようにスケジュールすることもできます。
ダンプに含まれているボリュームのリストを生成するには、実際にボリュームをダンプしないで、 -n フラグを実際のコマンドで使用されるオプションと組み合わせてください。
バックアップ・システムによるダンプ操作の実行方法
ダンプ操作を開始する前に、バックアップ・システムは、ボリューム・セット、ダンプ・レベル、およびポート・オフセットの項目がバックアップ・データベースにあるかどうか検査します。コマンドの構文が正しく、対話モードで発行されていれば、このコマンドにジョブ番号を割り当て、ジョブ・リストに追加します。 (backup) jobs コマンドを使用すると、対話モードでジョブ・リストを表示することができます。終了する場合には、 (backup) kill コマンドを使用します。
ボリューム・ロケーション・サーバー (VL) から、ダンプするボリュームのリストを取得した後で、バックアップ・サーバーはそのリストをサイト (サーバーと区画) 別にソートします。バックアップ・サーバーは、同じサイトのボリュームをダンプ内でグループにまとめ、復元操作中にオペレーターが磁気テープを交換する回数を最小化します。
インクリメンタル・ダンプはその親に依存しているので、有効な親ダンプが存在していないと、バックアップ・システムはその子であるインクリメンタル・ダンプを作成することができません。すぐ上の親ダンプ・レベルで作成されたダンプ・レコードが検出できないと、バックアップ・システムは、階層内で 1 つ上のレベルで作成されたダンプがないかどうかバックアップ・データベースを検索します。レコードが検出できないと、この操作をフル・ダンプ・レベルまで繰り返し行います。有効な親ダンプ・セットが検出できると、その 1 つ下のレベルにインクリメンタル・ダンプを作成します。フル・ダンプ・レベルでも検出できない場合には、そのボリューム・セットのダンプをフル・ダンプ・レベルで作成します。
ダンプ操作中にボリュームにアクセス不能になると、バックアップ・システムはそのボリュームをスキップし、ボリューム・セットの残りのボリュームのダンプを作成します。サーバー・マシンまたはプロセスが停止したり、ボリューム・ロケーション (VL) サーバーがボリューム・セットのボリュームにサイト・リストを生成してから、そのボリュームのデータのダンプを開始するまでにボリュームが移動していると、ボリュームにアクセスできない状態になります。最初のダンプ操作が終了すると、バックアップ・システムはスキップしたボリュームのダンプを再試行します。それでもボリュームをダンプできず、 CFG_device_name ファイルに ASK NO 命令が表示されない場合、バックアップ・システムは、ボリュームのダンプを再試行するのか、ダンプからボリュームを省略するのか、あるいは、操作をすべて停止する必要があるかどうかを、オペレーターに照会します。プロンプトが表示されたときに、操作員は、バックアップ・システムがボリュームにアクセスできなかった原因を解決することができます。 CFG_device_name ファイルに ASK NO 命令があると、バックアップ・システムはそのボリュームをダンプから削除します。
ダンプ操作をスケジュールする前に、バックアップ・システムは、 -at 引き数に指定された日付が経過していないかどうか検査し、通常のダンプ操作と同じように、ボリューム・セット、ダンプ・レベル、およびポート・オフセットの妥当性を検査します。スケジュールした操作を実行する前にも、パラメーターの妥当性を再度検査します。
ラベルに永続名がない磁気テープに初期ダンプを書き込む前に、バックアップ・システムは、ラベルの AFS 磁気テープ名が有効かどうか検査します。必要であれば、CFG_device_name ファイルで NAME_CHECK NO 命令を指定して、名前の検査を使用不可にしてください。
AFS 磁気テープ名の検査が使用可能な場合、バックアップ・システムは、次の 3 つのタイプの値を AFS 磁気テープ名として受け入れます。ラベル名が正しくない場合、バックアップ・システムは、 CFG_device_name ファイルの MOUNT 命令を呼び出すか、操作員にプロンプトを出して、有効なラベルを持つ磁気テープを獲得します。
磁気テープに書き込めるデータ量を判別するために、テープ・コーディネーターは、磁気テープのラベルに記録された容量を読み取ります。 (backup labeltape コマンドの -size 引き数を使用します。) ラベルの容量フィールドが空になっていると、テープ・コーディネーターは、ローカルの tapeconfig ファイルを参照して、指定されたポート・オフセットに記録された容量を使用します。 tapeconfig ファイルの容量フィールドも空である場合、テープ・コーディネーターは最大容量の 2 TB を使用します。
ダンプ操作時に、テープ・コーディネーターは、書き込んだデータの量を記録し、磁気テープの容量に達する直前に、書き込みを停止します。データの書き込みの途中で磁気テープ容量に達した場合には、データの続きを表す特別なマーカーを書き込み、次の磁気テープを使用して、ボリュームの書き込みを継続します。このボリュームの分割は、初期ダンプの場合でも、付加ダンプの場合でも発生します。この場合、ボリュームが複数の磁気テープに分散していることが、バックアップ・データベースに自動的に記録されます。
磁気テープの容量が予期した容量よりも大きい場合、テープ・コーディネーターは、次の磁気テープを使用しません。磁気テープの容量が予期した容量よりも小さい場合、テープ・コーディネーターは、データの書き込み中に予期しないテープ終わりマーカー (EOT) を検出する場合があります。ボリューム・データの書き込み中であれば、テープ・コーディネーターは、新しい磁気テープを獲得し、中断したボリュームのすべての内容を再度書き込みます。前の磁気テープに書き込まれたボリューム・データはそのまま残りますが、使用されることはありません。
バックアップ・システムは、磁気テープの再利用 (不要になった古いダンプ・セットの上から新しいダンプ・セットを書き込むこと) を許可していますが、その場合、次の条件を満たしていなければなりません。
作成中のダンプを含む磁気テープを上書きすることはできません
親ダンプを上書きすることはできませんparent_name (parent_dump_ID)
すべてのダンプが有効期限切れになる前か、あるいは AFS 磁気テープ名が間違っているときに磁気テープを再利用する場合には、 backup labeltape コマンドを発行して、磁気テープのラベルを無効にし、関連する磁気テープおよびダンプ・レコードをバックアップ・データベースからすべて削除してください。
このコマンドを実行すると、デフォルトでは、テープ・コーディネーターは、 /CFG_device_name ファイルの MOUNT 命令を呼び出して、最初の磁気テープにアクセスします。MOUNT 命令がない場合には、磁気テープの挿入をバックアップ操作員に要求します。ただし、 CFG_device_name ファイルに AUTOQUERY NO 命令があるか、あるいは butc コマンドが -noautoquery フラグ付きで発行されている場合には、テープ・コーディネーターは、磁気テープがすでに装置に挿入されているとみなします。そうでない場合、テープ・コーディネーターは MOUNT 命令を呼び出すか、操作員にプロンプトを出します。また、ダンプ操作で別の磁気テープが必要になった場合も、 MOUNT 命令を呼び出すか、プロンプトを出します。この場合、発行者は、必要な磁気テープを挿入しなければなりません。
注意
何らかの理由で、ダンプ操作が中断したか、失敗した場合は、割り込み前に磁気テープに書き込まれたすべのボリュームからのデータは有効で、復元操作に使用することができます。バックアップ・データベースには、失敗したダンプと正常にダンプされた各ボリュームに対する項目が含まれます。ダンプ操作が中断した場合の情報については、AFS 管理の手引き を参照してください。
バックアップ・データ・ファイルではなく、磁気テープにダンプする場合は、互換性のある磁気テープ装置 (同じタイプの磁気テープを読み取れる装置) だけを使用するのが最もよい方法です。互換性のある装置を使用すると、復元操作が非常に単純化されます。 backup diskrestore および backup volsetrestore コマンドの -portoffset 引き数には、複数のポート・オフセット番号を指定できます。ただし、バックアップ・システムは、すべてのフル・ダンプを復元する場合には、最初にリストされたポート・オフセット番号、すべてのレベル 1 のダンプを復元する場合は、2 番目にリストされたポート・オフセット番号、というようにポート・オフセット番号を使用していきます。最も低いレベルで、互換性のある磁気テープ装置を使用して、各レベルでのダンプを実行してください。互換性のない磁気テープ装置がない場合には、 backup volrestore コマンドを使用して、 1 回に 1 つのボリュームを復元するようにしてください。
backup コマンド・インタープリターは、 -file 引き数に指定されたファイルを読み取るとき、およびファイルにリストされた各操作を実行するときに、有効な (期限の切れていない) 管理トークンが必要になります。たとえば、操作員の不在時にダンプを実行するように発行者でスケジューリングした場合には、そのローカル・マシンで使用可能で有効なトークンが必要になります。これに対する 1 つのオプションは、ファイル・サーバー・マシン上ですべてのコマンドを発行 (または、すべてのスクリプトを実行) し、 backup および vos コマンドに -localauth フラグを指定することです。マシンまたはトークンに対する不正なアクセスを防ぐために、マシンは物理的に保護されていなければなりません。 (たとえば、操作時に操作員が監視しているテープ・コーディネーター・マシンよりも厳しく保護しなければなりません。) また、操作員不在時にダンプに複数の磁気テープが必要になった場合、操作員は、磁気テープ・スタッカーまたはジュークボックスと、装置構成ファイルを正しく設定しなければなりません。
通常モード (非対話モード) でコマンドを発行すると、ダンプ操作が完了するまで、シェル・プロンプトに制御は戻りません。新たに接続をオープンしなくても済むようにするには、対話モードでコマンドを発行してください。特に -at 引き数を指定してダンプ操作をスケジュールする場合には、そのようにしてください。
オプション
時間と分 (hh:MM) はオプションです。ただし、指定する場合には、24 時間形式で指定してください。 (たとえば、2:36 p.m. は、14:36 とします) この値を省略すると、デフォルトで、午前 0 時 (00:00) が使用されます。
たとえば、値 04/23/1999 20:20 を指定すると、 1999 年 4 月 23 日の午後 8 時 20 分にコマンドが実行されます。
注: | コマンドの構文ステートメントは、二重引用符や他の区切り記号で囲む必要のない複数語の値を受け入れるため、その中にあるこの引き数には、正符号 (+) が付きます。このステートメントが複数日付を受け入れるからではありません。日付 (任意選択で、時刻) 定義は、1 つだけ指定してください。 |
各 backup dump コマンドは、指定したファイルの各行に、コマンド行の場合と同じ構文で記述してください。ただし、行の先頭に backup を付ける必要はありません。各コマンドには、-volumeset および -dump 引き数の値を指定してください。デフォルトの 0 を使用しない場合には、 -portoffset 引き数にも値を指定してください。ファイルには、backup dump コマンドのオプションのオプションも指定することができます。次のファイルの例では、バックアップ・システムがファイルを読み込むとすぐに最初のコマンドが実行され、他のコマンドは、ファイルの読み込みが開始した後で実行されるようにスケジュールされています。
dump user /sunday1/wednesday -port 1 dump sun4x_56 /sunday1/friday -port 2 -at 04/08/1999 dump sun4x_55 /sunday1/friday -port 2 -at 04/08/1999 02:00 -append
この引き数は、-volumeset、 -dump、-portoffset、 -append、または -n オプションと一緒に使用してはなりません。
出力
コマンド・インタープリターは、まず、ボリューム・セットの項目とボリューム・ロケーション・データベース (VLDB) にあるボリュームを突き合わせて、ダンプに含まれるボリュームのリストを生成します。次のヘッダーを出力します。
Preparing to dump the following volumes:
次に、以下のメッセージを出力して、処理を行うテープ・コーディネーターにダンプ要求を送信したことを示します。
ダンプを開始しています。
発行者が -n フラグを使用している場合には、次のような形式の出力になります。
Starting dump of volume set 'volume set' (dump set 'dump level') Total number of volumes : number dumped Would have dumped the following volumes: list_of_volumes
list_of_volumes は、各ボリュームを名前とボリューム ID 番号で識別します。
テープ・コーディネーターがボリュームにアクセスできなくなると、テープ・コーディネーターはウィンドウにエラー・メッセージを表示し、ログとエラー・ファイルにエラーを記録します。
例
次のコマンドは、user というボリューム・セットのボリュームのダンプをダンプ・レベル /full/sunday2/monday で作成しています。発行者は、必要な磁気テープをポート・オフセット 5 の装置に挿入しています。
% backup dump -volumeset user -dump /full/sunday2/monday -portoffset 5 Preparing to dump the following volumes: user.jones.backup 387623900 user.pat.backup 486219245 user.smith.backup 597315841 . . . . Starting dump.
次のコマンドは、ユーザーが sys_sun ボリューム・セットのダンプを /full ダンプ・レベルで作成するときに、ダンプに含まれるボリュームのリストを表示します。
% backup dump -volumeset sys_sun -dump /full -n Starting dump of volume set 'sys_sun' (dump set '/full') Total number of volumes: 24 Would have dumped the following volumes: sun4x_56 124857238 sun4x_56.bin 124857241 . . . . sun4x_55 124857997 . . . .
次のコマンドは、ボリューム・セット user のボリュームのダンプをダンプ・レベル /sunday2/monday1 で 1999 年 6 月 14 日 午後 11 時 00 分に実行するようにスケジュールしています。該当するテープ・コーディネーターのポート・オフセットは 0 (ゼロ) なので、この引き数は省略されています。
% backup dump -volumeset user -dump /sunday2/monday1 -at 06/14/1999 23:00
必要となる特権
コマンドの発行者は、バックアップ・サーバーまたはボリューム・ロケーション (VL) サーバーが実行されている各マシン上、および関連するボリュームのあるすべてのファイル・サーバー・マシン上の /usr/afs/etc/UserList ファイルにリストされていなければなりません。 -localauth フラグを使用する場合には、コマンドの発行者が、ローカル・スーパーユーザー root として、サーバー・マシンにログオンする必要があります。
関連情報