ファイルシステム・バックアップおよびリストア操作の主要なユーザー・インタフェースは、Oracle Secure Backup Webツールとobtoolです。Oracle Secure Backupでデータのバックアップおよびリストアに使用される基礎となるエンジンはobtarです。obtarコマンドライン・インタフェースは直接使用できますが、これは上級ユーザーのみにお薦めします。
この付録の内容は、次のとおりです。
obtarは、Berkeley UNIX tar(1)コマンドをオリジナルとする派生コマンドです。obtarコマンドライン・インタフェースは、次の点でUNIXコマンドラインのPOSIX 1003.2標準に準拠しています。
オプションは、先頭にダッシュが付いた単一文字である(例: -c)。
オプションに引数が必要な場合、引数はオプションの後ろに続き、スペースでオプションと区切られます(例: Ec argument)。
複数のオプションが引数を必要とするのでなければ、1つのダッシュの後ろに複数のオプションをまとめて指定できます。引数を必要とするオプションが1つしかない場合、このオプションはオプションのグループの最後に配置する必要があります。たとえば、-cに引数を使用する場合、EvPZc argumentのように指定する必要があります。
表B-1では、obtarの基本モードについて説明します。各モードの説明には、最も一般的なオプションが含まれています。その他のオプションについては、「obtarのオプション」を参照してください。
表B-1 obtarのモード
| オプション | 説明 |
|---|---|
|
|
コマンドラインに指定されたディレクトリおよびファイルのワンタイム・バックアップ・イメージを作成する。 |
|
|
ディレクトリおよびファイルをリストアする。 |
|
|
バックアップ・イメージのコンテンツをリストする。 |
|
|
ボリュームに含まれるバックアップ・イメージのリストを表示する。 |
-Gオプションや-Nオプションを使用する場合など、必要なOracle Secure Backupカタログ・データが生成されるようにディレクトリおよびファイルをバックアップする場合は、obtoolまたはOracle Secure Backup Webツールを使用すると、カタログの参照やファイルのリストアが可能です。しかし、カタログ・ファイルを生成しない場合でも、RAWリストア操作を実行できます。
この項では、obtarを最大限に利用する方法について説明します。また、obtarのより高度なバックアップ機能の一部について情報を示します。
この項の内容は、次のとおりです。
デフォルトでは、obtarは、tarと完全な互換性があるバックアップ・イメージを生成します。この項では、obtarを使用して作成されたバックアップ・イメージとともにtarを使用するためのヒントを示します。
obtar -gを使用してバックアップ・イメージを作成すると、バックアップ・イメージに関する情報を提供する複数のファイルがバックアップ・イメージ内に作成されます。obtarでは、これらのファイルは特殊ファイルと認識され、バックアップ・イメージから実際のファイルとして抽出されることはありません。tarでは、これらのファイルは通常ファイルとして表示されます。つまり、tarを使用してバックアップ・イメージを抽出すると、接頭辞###が付いた複数のファイルが作成されます。obtar -xを使用してバックアップ・イメージをリストアすると、これらのファイルは作成されません。
次のobtarオプションはいずれも使用でき、tarとの互換性も維持されています。
-b, -B, -c, -f, -h, -l, -m, -t, -v, -x
複数のボリュームまたがるバックアップ・イメージの抽出にtarを使用する場合は、複数のボリュームにまたがるバックアップ・イメージの各セクションが有効なtarファイルとなります。obtarでは、このバックアップ・イメージのコンテンツを正しく抽出できますが、tarでは、バックアップ・イメージの最初のセクションを抽出した後、早々にファイルの終わりが検出されます。この時点で、ボリューム・ブレークをまたいで続くファイルのデータの最初の部分しか抽出されていません。ファイルを完全にリストアするには、次のようにします。
抽出を続行するため、最初のファイルの断片を上書きされない場所に移動します。
次のボリュームをロードして抽出を続行します。2番目のファイルの断片が抽出されます。
UNIXのcatコマンドを使用し、2番目のファイルの断片を最初のファイルの断片の最後に追加して完全なファイルを取得します。次に、例を示します。
cat first_frag second_frag > complete_file
ファイルの断片を削除します。
通常、obtarでは、ツリーのバックアップ時にブロック特殊ファイルが見つかると、特殊ファイルの名前および属性のみがバックアップ・イメージに書き込まれます。しかし、ブロック特殊ファイルがバックアップ・ツリーのトップ・レベルに明示的にまたはワイルドカードを使用して指定されている場合は、ファイル名、属性およびコンテンツがバックアップされます。
|
注意: Oracle Secure Backupでは、文字特殊ファイルの内容のバックアップやリストアはサポートされていません。 |
たとえば、次のコマンドは、/devディレクトリ内のすべての特殊ファイル名で構成されるバックアップ・イメージを作成しますが、特殊ファイルのオープンも読取りも行いません。
obtar -cvf tape0 /dev
一方、次のコマンドは、/dev/sd0a、/dev/sd13a、/dev/sd13bなどをオープンし、基礎となるRAWファイルシステムのコンテンツ全体をバックアップ・イメージに書き込みます。
obtar -cvf tape0 /dev/sd0a /dev/sd13*
このようなアクセスはネイティブのLinuxまたはUNIXファイルシステムを経由しないため、LinuxまたはUNIXデータ以外のデータが格納されているRAWファイルシステム(データベースが格納されているディスク・パーティションなど)のバックアップに使用できます。
obtarでは、RAWファイルシステム上でどのブロックが使用または未使用であるかがわからないため、常にファイルシステム全体が保存されます。これは、使用中のブロックのみを保存する、ベンダー提供のLinuxまたはUNIXファイルシステムを使用するバックアップとは異なります。
データをRAWファイルシステムにリストアする場合、リストア先のファイルシステムのサイズは、バックアップされたファイルシステムのサイズ以上である必要があります。RAWファイルシステムをリストアする場合、ファイルシステム上に現存するデータはすべて失われます。バックアップ・イメージのデータによって全面的に上書きされます。
RAWファイルシステム、あるいは他のブロック特殊ファイルをリストアするには、RAWファイルシステムをmkfs、mkvolなどのツールを使用してフォーマットしておき、RAWファイルシステムを参照する特殊ファイルが存在している必要があります。それ以外の場合は、データは通常ファイルとしてリストアされます。
|
注意: マウントされたファイルシステムをバックアップまたはリストアしないでください。ファイルシステムがマウントされると、バックアップまたはリストア中に他のプロセスによるアクティビティでファイルシステムが変更され、内部的な不整合が発生する原因となる可能性があります。 |
obtoolを使用すれば、デバイス・インタフェースを用いてRAWパーティションをバックアップすることができます。バックアップ中にRAWファイルシステムをマウントしないでください。データセットにデバイス・ファイルのパスを含めることでブロック・デバイス・ファイルをバックアップすることができます。
RAWパーティションをバックアップするには、次のようにします。
RAWパーティション用のデータセットを作成します。
たとえば、次のようにrawpart.dsという名前のデータセットを作成できます。
include host brhost2
{
include path /dev/sda3
}
パーティションをバックアップします。
次のobtoolコマンドにより、前ステップで作成されたデータセットを使用してバックアップが行われます。
ob> backup -D rawpart.ds --restriction lib1 --go
obtoolを使用すれば、デバイス・インタフェースを用いてRAWパーティションをリストアすることができます。リストア操作中にRAWファイルシステムをマウントしないでください。
RAWパーティションをリストアするには、次のようにします。
obtoolを使用してリストア先となるホストを設定します。
たとえば、次のようにcdコマンドを実行してホストをbrhost2に設定します。
ob> cd --host brhost2
パーティションをリストアします。
次のobtoolコマンドは、パーティション/dev/sda3をリストアします。
ob> restore --select latest /dev/sda3 –-go
通常、obtarでは、増分バックアップの対象にするファイルを決定する際に、ファイルのmtime、すなわちファイルのコンテンツが最後に変更された時間が使用されます。mvまたはcp -pを使用してファイルがディレクトリに追加されると、バックアップされないことがあります。これは、そのファイルの変更時間が元のファイルの変更時間のままであるためです。この問題には、増分バックアップの対象の基準としてmtimeではなくctime(ステータス変更時間)を使用するようにobtarに指示することで対処できます。ファイルのステータス変更時間は、ファイルのinodeが最後に変更された時間です。
ctimeを使用すると、mtimeを使用して選択されたファイル全部と、ディレクトリに移動またはコピーされたファイル全部が選択されます。このオプションを指定するには、コマンドラインで-Xuse_ctimeを指定します。スケジュール済バックアップの場合は、backupoptionsポリシーに-Xuse_ctimeを指定できます。
-Xuse_ctimeの使用には、難点があります。mtime基準を使用する場合、バックアップ後に各ファイルのatime(最終アクセス時間)はリセットされます。ファイルのバックアップという動作では、ファイルのatimeは変更されません。ctimeを選択基準として使用する場合、最終アクセス時間はリセットできません。これは、最終アクセス時間のリセットにより、ファイルの変更時間がリセットされるためです。したがって、増分バックアップはすべて全体バックアップに変ります。つまり、-Xuse_ctimeを指定すると、-Xupdtuもオンになります。
重要な点は次のとおりです。
-Xuse_ctimeを指定しない場合、増分の基準はmtimeです。atimesは変更されないままで、移動されたファイルは欠落する可能性があります。
-Xuse_ctimeを指定する場合、増分の基準はctimeです。atimesはバックアップの時間を反映し、移動されたファイルは取得されます。
ローカル・マウント・ポイントはローカル・ファイルシステムをマウントします。リモート・マウント・ポイントは、ネットワークを介してアクセスされるファイルシステムのローカル・マウントです。デフォルトでは、obtarでは、マウント・ポイントを明示的に指定しないかぎり、ローカルまたはリモート・マウント・ポイントを横断しません。
マウント・ポイントの動作は、次のobtarのオプションを使用すると制御できます。
-Xchkmnttab
デフォルトでは、stat(2)操作を実行してファイルがマウント・ポイントであるかどうかを判別します。リモートでマウントされたファイルシステムが停止または応答しない場合、stat(2)操作が原因でobtarプロセスがハングする可能性があります。
-Xchkmnttabオプションは、これらのstat(2)操作を実行する前にローカルのマウント表/etc/mnttabを参照し、リモート・マウント・ポイントだと判明したディレクトリをスキップするようにobtarに指示します。ローカル・マウント・ポイントはスキップされません。
-Xchkmnttabは、コマンドラインまたはbackupoptionsポリシーに指定できます。-Xchkmnttabオプションは、-Xcrossmpによって無効にされます。
-Xcrossmp
-Xcrossmpオプションは、-Xchkmnttabオプションが指定されている場合でも、すべてのマウント・ポイントを横断するようにobtarに指示します。-Xcrossmpオプションは、コマンドラインまたはbackupoptionsポリシーに指定できます。