ここでは、LDAP 操作エラーのトラブルシューティング方法を示します。操作エラーの考えられる原因、トラブルシューティングのために収集する情報、この情報を分析する方法について説明します。
操作は次の理由で失敗することがあります。
ACI が、操作が許可されていない場所にある
リフェラルが別のサーバーを参照している
データベースが更新時にリフェラルに設定されたため、更新を続行できない
データベースが再インポートされている
オンライン設定が許可されていない
ACI が問題の原因であるかどうかを確認するには、サフィックスレベルから、アクセスしようとしているエントリまでの、すべての ACI に関する情報を収集します。このデータは、次のように、ldapsearch 操作を使用して収集します。
# ldapsearch -D cn=Directory Manager -b base-suffix dn aci |
操作が含まれるアクセスログファイルとエラーログファイルを収集します。必ず ACI ログレベルを有効にしてください。次のように入力して、エラーログファイルの ACI ログレベルを有効にします。
# dsconf set-log-prop errors level:err-acl |
次のように入力して、アクセスログファイルの ACI ログレベルを有効にします。
# dsconf set-log-prop access level:acc-internal |
エラーログの内容を表示するには、dsadm コマンドを次のように実行します。
dsadm show-error-log -A duration [-L last-lines] install-path |
-A オプションは、ログから返される行の最長有効期間を指定します。たとえば、24 時間未満のすべてのエントリを検索するには、-A 24h と指定します。-L オプションは、ログから返される最大行数を指定します。たとえば、最後の 50 行を返すには、-L 50 と指定します。デフォルトでは 20 行返されます。
アクセスログの内容を表示するには、dsadm コマンドを次のように使用します。
dsadm show-access-log -A duration [-L last-lines] install-path |
ログファイル自体は次のディレクトリ内にあります。
instance-path/logs/errors* instance-path/logs/access* |
問題を自分でトラブルシューティングできない場合は、データベースにアクセスできなかった期間のエラーログファイルとアクセスログファイルを収集し、分析のためにそれらのファイルを Sun サポートに送信してください。デフォルトでは、ログファイルは instance-path/logs ディレクトリ内にあります。エラーログとアクセスログへのパスを見つけるには、次のコマンドを使用します。
# dsconf get-log-prop ERROR path |
または、
# dsconf get-log-prop ACCESS path |