12.3.1 監査証跡ファイルの移動(監査証跡の保存先ディレクトリへの移動)
監査証跡ファイルを,監査証跡の出力先ディレクトリから監査証跡の保存先ディレクトリに移動させることについて説明します。
HADB管理者は,定期的に監査証跡ファイルを,監査証跡の出力先ディレクトリから監査証跡の保存先ディレクトリに移動させてください。定期的に監査証跡ファイルを移動させることで,次のような事象が発生することを防いでください。
-
監査証跡の出力先ディレクトリを作成したディスクが満杯になること
サーバ定義のadb_audit_log_max_numオペランドに0を指定している場合,上限なく監査証跡ファイルが作成されます。そのため,監査証跡ファイルを移動させないと,最終的にはディスクが満杯になります。
-
古い監査証跡ファイルが削除されること
サーバ定義のadb_audit_log_max_numオペランドに4以上を指定している場合,作成される監査証跡ファイル数の上限が設定されます。監査証跡ファイル数が上限を超えた場合,いちばん古い監査証跡ファイルが削除されます。そのため,監査証跡ファイルを移動させないと,古い監査証跡ファイルが削除されてしまいます。
監査証跡ファイルを移動させるタイミングには,次の2つがあります。監査証跡の出力先ディレクトリを作成したディスクが満杯になる前,かつ古い監査証跡ファイルが削除される前に,監査証跡ファイルを移動させるようにしてください。
- ■監査証跡ファイルを移動させるタイミング
-
-
事前に決めたタイミングで移動させる
事前に決めたタイミングで,監査証跡ファイルを移動させます。例えば,1日1回のタイミングで,監査証跡ファイルを移動させます。
-
監査証跡ファイルが切り替わったときに移動させる
監査証跡ファイルが切り替わった直後に,監査証跡ファイルを移動させます。監査証跡ファイルの切り替え時に出力されるKFAA81401-Iメッセージ,およびKFAA81402-Iメッセージを監視してください。
- 重要
-
サーバ定義のadb_audit_log_max_numオペランドに4以上を指定している場合,事前に決めたタイミングで監査証跡ファイルを移動させる前に,古い監査証跡ファイルが削除されるおそれがあります。そのため,メッセージを監視して,監査証跡ファイルが切り替わった直後に,監査証跡ファイルを移動させるようにしてください。
-
監査証跡ファイルを移動させる場合,次の手順で実施してください。
- ■監査証跡ファイルを移動させる手順
-
-
監査証跡ファイルを,監査証跡の出力先ディレクトリから監査証跡の保存先ディレクトリにコピーする
ただし,現用の監査証跡ファイルはコピーしないでください。
-
監査証跡ファイルのコピーが完了したら,コピー元の監査証跡ファイルを削除する
ただし,次のファイルは削除しないでください。
-
現用の監査証跡ファイル
-
ADB_AUDITREAD関数で読み込み対象になっている監査証跡ファイル
- 重要
-
現用の監査証跡ファイルを削除した場合,現用の監査証跡ファイルに出力された監査証跡が失われます。そのため,現用の監査証跡ファイルは削除しないように注意してください。
-
-
監査証跡ファイルを移動させる例を,次に示します。
■監査証跡ファイルを移動させる例
監査証跡ファイルを,監査証跡の出力先ディレクトリ(/mnt/audittrail/outputarea/audit)から監査証跡の保存先ディレクトリ(/mnt/audittrail/shorttimesavearea/audit_bak)に移動させます。
-
移動が必要な監査証跡ファイルの一覧を作成する
OSのfindコマンドで,監査証跡の出力先ディレクトリに存在する監査証跡ファイルを検索して,移動が必要な監査証跡ファイルの一覧(/home/adbmanager/tmp/auditfilelist.txt)を作成します。なお,次のコマンドでは,現用の監査証跡ファイルは検索対象外となっています。
find /mnt/audittrail/outputarea/audit \ -name "adbaud-????????-??????-???*.aud" \ > /home/adbmanager/tmp/auditfilelist.txt
-
移動が必要な監査証跡ファイルをコピーする
移動が必要な監査証跡ファイルの一覧(/home/adbmanager/tmp/auditfilelist.txt)に存在する全ファイルを,OSのcpコマンドで,監査証跡の出力先ディレクトリから監査証跡の保存先ディレクトリにコピーします。
while read filename ; do cp ${filename} /mnt/audittrail/shorttimesavearea/audit_bak done < /home/adbmanager/tmp/auditfilelist.txt
-
コピーが完了した監査証跡ファイルを削除する
監査証跡ファイルのコピーが完了したら,OSのrmコマンドで,コピー元の監査証跡ファイルを監査証跡の出力先ディレクトリから削除します。
while read filename ; do rm ${filename} done < /home/adbmanager/tmp/auditfilelist.txt
-
移動が必要な監査証跡ファイルの一覧を削除する
OSのrmコマンドで,手順1.で作成した移動が必要な監査証跡ファイルの一覧(/home/adbmanager/tmp/auditfilelist.txt)を削除します。
rm /home/adbmanager/tmp/auditfilelist.txt