監査デーモンは、監査レコードの書き込み中に異常な条件が発生すると、/etc/security/audit_warn スクリプトを起動します。audit_warn(1M) のマニュアルページを参照してください。このスクリプトをサイトでカスタマイズして、手作業による介入が必要な場合に警告を出したり、自動処理を行わせることができます。どのエラー条件が発生した場合も、audit_warn はメッセージをコンソールに書き込み、audit_warn の別名に送ります。管理者は、BSM を使用可能にした後で、この別名を設定しておく必要があります。
監査デーモンは次の条件を検出すると audit_warn を起動します。
監査ディレクトリが minfree の許容値を超えていっぱいになった場合 (minfree、つまりソフト限界は、監査ファイルシステム上で使用可能な領域のパーセンテージです)。
audit_warn スクリプトは、文字列 soft と、使用可能領域が下限を下回ったディレクトリの名前を使用して起動されます。監査デーモンは、次に適切なディレクトリに自動的に切り替えて、この新しいディレクトリが minfree の上限に達するまで監査ファイルに書き込みます。監査デーモンは、audit_control にリストされた順序で残りの各ディレクトリにアクセスし、それぞれが minfree の制限に達するまで監査レコードを書き込みます。
すべての監査ディレクトリが minfree のしきい値を超えて満たされた場合。
引数として文字列 allsoft を使用して、audit_warn スクリプトが起動されます。コンソールにメッセージが書き込まれ、audit_warn の別名にメールが送られます。
audit_control 内にリストされたすべての監査ディレクトリがそれぞれの minfree 制限に達すると、監査デーモンは最初の監査ディレクトリに戻って、そのディレクトリが完全にいっぱいになるまで監査レコードを書き込みます。
監査ディレクトリが完全にいっぱいになり、残りの領域がなくなった場合。
引数として文字列 hard とディレクトリ名を使用して、audit_warn スクリプトが起動されます。コンソールにメッセージが書き込まれ、audit_warn の別名にメールが送られます。
監査デーモンは、使用可能領域が残っている次の適切なディレクトリがあれば、それに自動的に切り替えます。その後は、audit_control 内でリストされた順番に、残りの各ディレクトリにアクセスし、それぞれがいっぱいになるまで監査レコードを書き込みます。
すべての監査ディレクトリが完全にいっぱいになった場合。引数として文字列 allhard を使用して、audit_warn スクリプトが起動されます。
デフォルト構成では、コンソールにメッセージが書き込まれ、audit_warn の別名にメールが送られます。監査レコードを生成中のプロセスは中断されます。監査デーモンはループに入り、領域が使用可能になるのを待って監査レコードの処理を再開します。監査レコードが処理されないうちは、監査対象の動作も発生しません。監査レコードを生成しようとするプロセスはすべて中断されます。このため、別の監査管理アカウントを設定し、監査機能を使用可能にせずに操作できるようにしておくことが推奨されます。この方法を使用すると、管理者は中断せずに操作を続けることができます。
内部エラーが発生した場合。つまり、別の監査デーモンプロセスがすでに実行されている場合 (文字列 ebusy)、一時ファイルを使用できない場合 (文字列 tmpfile)、auditsvc() システムコールが失敗した場合 (文字列 auditsvc)、または監査のシャットダウン中に信号を受信した場合 (文字列 postsigterm)。
audit_warn の別名にメールが送られます。
audit_control ファイルの内容にエラーが見つかった場合。デフォルトでは、audit_warn の別名にメールが送られ、コンソールにメッセージが送られます。