ファイルシステム・バックアップおよびリストア操作の主要なユーザー・インタフェースは、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
ポリシーに指定できます。