AD レプリケーション エラー 8333 のトラブルシューティング: ディレクトリ オブジェクトが見つかりません

この記事では、エラー 8333: ディレクトリ オブジェクトが見つからない (ERROR_DS_OBJ_NOT_FOUND) で Active Directory レプリケーションが失敗する問題について説明します。

適用対象: Windows Server 2012 R2
元の KB 番号: 2703708

注:

ホーム ユーザー: この記事は、テクニカル サポート エージェントと IT プロフェッショナルのみを対象としています。 問題のヘルプを探している場合は、 Microsoft コミュニティに問い合わせてください

現象

この記事では、エラー 8333: ディレクトリ オブジェクトが見つからない (ERROR_DS_OBJ_NOT_FOUND) で Active Directory レプリケーションが失敗した場合の症状、原因、解決の手順について説明します。

  1. エラーの形式は次のとおりです。

    10 進数 16 進数 シンボリック エラー文字列
    8333 0x208d ERROR_DS_OBJ_NOT_FOUND ディレクトリ オブジェクトが見つかりません。
  2. 次のイベントがログに記録される可能性があります

    ソース イベント ID イベント文字列
    NTDS レプリケーション 2108 このイベントには、以前にログに記録された 1084 イベントの REPAIR PROCEDURES が含まれています。 このメッセージは、このレプリケーション先での Active Directory データベースの整合性に関する特定の問題を示します。 レプリケートされた変更を次のオブジェクトに適用しているときに、データベース エラーが発生しました。 データベースに予期しない内容があり、変更が行われないようにしました。 オブジェクト: OU=TestOU、DC=contoso、DC=com オブジェクト GUID: <GUID> ソース ドメイン コントローラー: A52b57e3-92b9-4264-822b-72963eaf1030._msdcs.contoso.com追加データ プライマリ エラー値: 8333 ディレクトリ オブジェクトが見つかりません。 セカンダリ エラー値: -1601 JET_errRecordNotFound、キーが見つかりませんでした

    NTDS 全般
    2031 DS サービス構成オブジェクトが見つかりません。 誤って削除された可能性があります。 Active Directory は正常に動作できますが、LDAP の制限、既定のクエリ ポリシー、SPN マッピングなど、特定のサービス パラメーターを設定することはできません。 DS サービス構成オブジェクト: CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=contoso,DC=com エラー: 8333 (ディレクトリ オブジェクトが見つかりません。)ユーザー アクション: DS サービス構成オブジェクトを復元してみてください。
  3. から出力される場合があります。 repadmin /replsum

    DC-1-03 03h:14m:11s 1 / 52 1 (8333) ディレクトリ オブジェクトが見つかりません。
    DC-2-01 03h:13m:39s 1/ 26 3 (8333) ディレクトリ オブジェクトが見つかりません。
    DC-3-09 03h:08m:45s 2 / 103 1 (8333) ディレクトリ オブジェクトが見つかりません。
    DC-4-03 03h:05m:52s 1 / 13 7 (8333) ディレクトリ オブジェクトが見つかりません。

  4. 新しいドメイン コントローラーの昇格中に DCPromo が失敗する可能性があり、DCPROMO ログに次のエラーが表示されます

    <DateTime> [INFO] 新しいドメイン ユーザー、グループ、およびコンピューター オブジェクトの作成
    <DateTime> [INFO] エラー - インストール後に Active Directory に重要な情報が見つからないので、続行できません。 これがレプリカ ドメイン コントローラーの場合は、このサーバーをドメインに再参加します。 (8333)
    <DateTime> [INFO] NtdsInstall for contoso.com returned 8333
    <DateTime> [INFO] DsRolepInstallDs から 8333 が返されました
    <DateTime> [ERROR] Directory Service へのインストールに失敗しました (8333)

    注:

    エラー 8333 は、ERROR_DS_OBJ_NOT_FOUNDまたは "ディレクトリ オブジェクトが見つかりません" に変換されます。

  5. グローバル カタログでパーティションを再ホストしようとしているときに

    repadmin /rehost \<dc-name>\<partition to rehost>\<good source>

    repadmin /rehost failed with DsReplicaAdd failed with status 8333 (0x208d)

原因

エラー状態 8333 "ディレクトリ オブジェクトが見つかりません" には、次のような複数の根本原因があります。

  1. ソース ドメイン コントローラーのイベント ログに記録された追加の関連エラーを含むデータベースの破損:

    Source イベント ID 説明
    NTDS レプリケーション 2108 このイベントには、以前にログに記録された 1084 イベントの REPAIR PROCEDURES が含まれています。 このメッセージは、このレプリケーション先のActive Directory Domain Services データベースの整合性に関する特定の問題を示します。 レプリケートされた変更を次のオブジェクトに適用しているときに、データベース エラーが発生しました。 データベースに予期しない内容があり、変更が行われないようにしました。オブジェクト: CN=chduffey、OU=IT、OU=Corp、DC=contoso、DC=com
    オブジェクト GUID: <GUID>
    ソース ドメイン コントローラー: c4efaf4e-d652-4630-8623-afec5ebc8532._msdcs.contso.com追加データ
    プライマリ エラー値: 8333 ディレクトリ オブジェクトが見つかりません。
    NTDS 全般 1168 エラー -1073741790(c0000022) が発生しました (内部 ID 3000b3a)。 サポートについては、Microsoft 製品サポート サービスにお問い合わせください。
    Microsoft-Windows-
    ActiveDirectory_DomainService
    1084 内部イベント: Active Directory では、次のソース ドメイン コントローラーから受け取った変更で、次のオブジェクトを更新できませんでした。 これは、ドメイン コントローラー上の Active Directory への変更の適用中にエラーが発生したためです。
    NTDS レプリケーション 1699 ローカル ドメイン コントローラーは、次のディレクトリ パーティションに対して要求された変更を取得できませんでした。 その結果、次のネットワーク アドレスでドメイン コントローラーに変更要求を送信できませんでした。 8446 レプリケーション操作でメモリの割り当てに失敗しました

    さらに、レプリケーションの状態コードが表示される場合があります。

    コード Sources 追加情報
    8451 データベース破損イベントのサブコードとしての Repadmin、DcPromo このエラーが特定された場合は、最初のインスタンスの 8451 のトラブルシューティング ガイドを参照してください。

    2645996
  2. 関連するエラーが記録された残留オブジェクト:

    ソース イベント ID 説明
    NTDS レプリケーション 1988 Active Directory レプリケーションで、ローカル ドメイン コントローラー (DC) Active Directory データベースから削除された次のパーティションにオブジェクトが存在する問題が発生しました。 廃棄ストーンの有効期間が経過する前に、削除でレプリケートされた直接的または推移的なレプリケーション パートナーのすべてではありません。 Active Directory パーティションから削除およびガベージ コレクションされたが、同じドメイン内の他の DC の書き込み可能なパーティションにまだ存在するオブジェクト、またはフォレスト内の他のドメインにあるグローバル カタログ サーバーの読み取り専用パーティションは、"残留オブジェクト" と呼ばれます。
    NTDS レプリケーション 1388 別のドメイン コントローラー (DC) が、ローカル Active Directory データベースに存在しないオブジェクトをこの DC にレプリケートしようとしました。 オブジェクトは、この DC で削除され、既にガベージ コレクションされている可能性があります (オブジェクトが削除されてから、廃棄ストーンの有効期間以上が経過しています)。 更新要求に含まれる属性セットでは、オブジェクトを作成するのに十分ではありません。 オブジェクトは完全な属性セットで要求され、この DC で再作成されます。

    さらに、次のレプリケーション状態コードが表示される場合があります。

    ソース ソース 説明
    8606 NTDS レプリケーション イベントの Repadmin、DCPromo、サブ コード このエラーが特定された場合は、最初のインスタンスの 8606 のトラブルシューティング ガイドを参照してください。 2028495
    1722 NTDS レプリケーション イベントの Repadmin、DCPromo、サブ コード このエラーが特定された場合は、最初のインスタンスの 1722 のトラブルシューティング ガイドを参照してください。 2102154
  3. 競合オブジェクト

  4. サード パーティのプロセス

    1. ウイルス対策
    2. ディレクトリ同期ソフトウェア

解決方法

レプリケーション パートナーシップのソース ドメイン コントローラーで 8333 "ディレクトリ オブジェクトが見つかりません" エラー メッセージの調査を開始する必要があります。 このドキュメントの「原因」セクションの問題の考えられる各原因を参照して、サポート担当者は、ソース/宛先レプリケーション パートナーシップのソースに関する調査を開始する必要があります。

  1. Active Directory (JET) データベースの破損の兆候を確認します。

    1. JET データベース破損イベントのソースおよび宛先レプリケーション パートナーの Directory Services イベント ログを確認します。 可能なイベントは次のとおりです。

      Source イベント ID 説明
      NTDS レプリケーション 2108 このイベントには、以前にログに記録された 1084 イベントの REPAIR PROCEDURES が含まれています。 このメッセージは、このレプリケーション先のActive Directory Domain Services データベースの整合性に関する特定の問題を示します。 レプリケートされた変更を次のオブジェクトに適用しているときに、データベース エラーが発生しました。 データベースに予期しない内容があり、変更が行われないようにしました。オブジェクト: CN=chduffey、OU=IT、OU=Corp、DC=contoso、DC=com
      オブジェクト GUID: <GUID>
      ソース ドメイン コントローラー: c4efaf4e-d652-4630-8623-afec5ebc8532._msdcs.contso.com追加データ
      プライマリ エラー値: 8333 ディレクトリ オブジェクトが見つかりません。
      NTDS 全般 1168 エラー -1073741790(c0000022) が発生しました (内部 ID 3000b3a)。 サポートについては、Microsoft 製品サポート サービスにお問い合わせください。
      Microsoft-Windows-
      ActiveDirectory_DomainService
      1084 内部イベント: Active Directory では、次のソース ドメイン コントローラーから受け取った変更で、次のオブジェクトを更新できませんでした。 これは、ドメイン コントローラー上の Active Directory への変更の適用中にエラーが発生したためです。
      NTDS レプリケーション 1699 ローカル ドメイン コントローラーは、次のディレクトリ パーティションに対して要求された変更を取得できませんでした。 その結果、次のネットワーク アドレスでドメイン コントローラーに変更要求を送信できませんでした。 8446 レプリケーション操作でメモリの割り当てに失敗しました

      さらに、レプリケーションの状態コードが表示される場合があります。

      コード Sources 追加情報
      8451 データベース破損イベントのサブコードとしての Repadmin、DcPromo このエラーが特定された場合は、最初のインスタンスの 8451 のトラブルシューティング ガイドを参照してください。

      2645996
    2. 高度なディレクトリ サービス レプリケーション ログを有効にします。

      重要

      このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 レジストリを変更する際には十分に注意してください。 保護を強化するため、レジストリを変更する前にレジストリをバックアップします。 こうしておけば、問題が発生した場合にレジストリを復元できます。 レジストリのバックアップ方法および復元方法の詳細を参照するには、以下のサポート技術情報番号をクリックしてください。
      322756 Windows でレジストリをバックアップおよび復元する方法

      NTDS 診断ログを増やすには、次のレジストリ キーの下にある宛先ドメイン コントローラーのレジストリで次のREG_DWORD値を変更します。
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics
      次のサブキーの値を 5 に設定します。
      5 レプリケーション イベント
      9 内部処理
      注 レベル 5 のログ記録は非常に詳細であり、問題が解決された後、両方のサブキーの値を既定値の 0 に戻す必要があります。 これらのイベントを分離して識別するには、Directory Services イベント ログのフィルター処理を実行する必要があります。

    3. 増加したログから生成された新しいイベントのイベント ログで、データベースの破損を明確に確認できるエラー値を確認します。

    4. データベースの破損が検出された場合は、フォレスト内の各ドメインの最近のバックアップが存在することを確認します。

    5. ディレクトリ サービスの復元モードでデータベースの破損を報告するドメイン コントローラーを再起動します。 (サーバーの再起動中に F8 キーを押すか、msconfig.exe 開くことができない場合は、"ブート" オプションで [Active Directory 修復] を選択します)。

    6. Directory Services 復元モードでデータベースの検査を実行するには:

      1. コマンド プロンプトを開く
      2. 「ntdsutil」と入力します
      3. 「activate instance ntds」と入力します
      4. 「セマンティック データベース分析」と入力します
      5. 「go」と入力します

      エラーが検出されると、コンソールに表示され、現在の作業ディレクトリのログ ファイルに書き込まれます。

    7. データベース破損エラーが検出された場合は、Microsoft サポート サービスに問い合わせてください。

    8. 最後のオプションとして。 ドメイン コントローラーを降格し、もう一度昇格してデータベースを置き換え、ドメイン内の別のサーバーからコンテンツをレプリケートできます。

      注:

      Active Directory データベースが環境内で破損している場合は、今後の問題を回避するために、破損の原因を考慮することが重要です。 このような破損の既知の原因の一部は次のとおりです。

      1. ハードウェアの障害: ハード ディスクまたはコントローラー
      2. キャッシュ: ハード ディスク コントローラー
      3. 古いドライバー: ハード ディスク コントローラー
      4. 古いファームウェア: BIOS、ハード ディスク コントローラー、ハード ディスク
      5. 突然の電力損失
  2. フォレスト内のすべてのドメイン コントローラーに残留オブジェクトが存在するかどうかを確認し、削除します。
    残留オブジェクトのチェックには、次のような複数の方法があります。

    1. フォレスト内のドメイン コントローラーに次の Directory Services イベントが存在するかどうかを確認します。

      ソース イベント ID 説明
      NTDS レプリケーション 1988 Active Directory レプリケーションで、ローカル ドメイン コントローラー (DC) Active Directory データベースから削除された次のパーティションにオブジェクトが存在する問題が発生しました。 廃棄ストーンの有効期間が経過する前に、削除でレプリケートされた直接的または推移的なレプリケーション パートナーのすべてではありません。 Active Directory パーティションから削除およびガベージ コレクションされたが、同じドメイン内の他の DC の書き込み可能なパーティションにまだ存在するオブジェクト、またはフォレスト内の他のドメインにあるグローバル カタログ サーバーの読み取り専用パーティションは、"残留オブジェクト" と呼ばれます。
      NTDS レプリケーション 1388 別のドメイン コントローラー (DC) が、ローカル Active Directory データベースに存在しないオブジェクトをこの DC にレプリケートしようとしました。 オブジェクトは、この DC で削除され、既にガベージ コレクションされている可能性があります (オブジェクトが削除されてから、廃棄ストーンの有効期間以上が経過しています)。 更新要求に含まれる属性セットでは、オブジェクトを作成するのに十分ではありません。 オブジェクトは完全な属性セットで要求され、この DC で再作成されます。

      さらに、次のレプリケーション状態コードが表示される場合があります。

      コード Sources 追加情報
      8451 データベース破損イベントのサブコードとしての Repadmin、DcPromo このエラーが特定された場合は、最初のインスタンスの 8451 のトラブルシューティング ガイドを参照してください。

      2645996
    2. repldiag.exe を使用して、フォレストで残留オブジェクトを調べます。

      Repldiag は、codeplex.com からダウンロードできます。 残留オブジェクト チェックイン アドバイザリ モードを実行するには、次の構文を使用します。

      repldiag /RemoveLingeringObjects/AdvisoryMode

      Directory Service イベント 1942 は、各ドメイン コントローラーでログに記録され、各ディレクトリ パーティションで検出された残留オブジェクトの数を示します。

      repldiag によって実行される作業は、組み込みのディレクトリ サービス レプリケーション ツール (Repadmin.exe) を使用して実行することもできます。

      repadmin.exe を使用することを好むサポート プロフェッショナルの場合、部分コマンドは になります Repadmin /removelingeringobjects。 Repldiag.exe は、フォレスト内のすべてのサーバー上のすべてのディレクトリ パーティションを 1 つのコマンドで検索するために使用できるという点で、Repadmin.exe よりも利点があります。

      残留オブジェクトが検出された場合:

      1. フォレスト内の各ドメインで 2 つのドメイン コントローラーのシステム状態バックアップを実行します。
      2. repldiag.exe を使用して、残留オブジェクトのクリーンアップを実行します。
        repldiag /RemoveLingeringObjects
      3. 各ドメイン コントローラーは、ディレクトリ サービス パーティションごとにディレクトリ サービス イベント 1942 をログに記録し、残留オブジェクトが削除されたかどうかを示します。

    残留オブジェクトを削除する別の方法として、組み込みのツール Repadmin.exe とスイッチを /removelingeringobjects 使用できます。 この方法には複数のコマンドが必要です。repldiag は、使用するコマンドの集計 Repadmin.exe 提供します。

  3. 競合オブジェクトの存在を確認し、削除します。
    a. 関連するディレクトリ パーティションで、CNF で管理されるオブジェクトと、競合が発生したオブジェクトが次の構文と競合しているオブジェクトを検索します。

    repadmin /showattr localhost "dc=parent,dc=com" /subtree /filter:"((&(objectClass=*)(cn=*\0acnf:*)))" /atts:objectclass,whencreated,whenchanged

    この例では、"dc=parent,dc=com" はドメインの識別名 parent.com です。

    ほとんどの場合、8333 エラーは、競合オブジェクトに対して評価する必要があるディレクトリ パーティションを示します。 構成パーティションは、すべてのインスタンスでチェックすることをお勧めします。

    repadmin /showattr localhost "cn=configuration,dc=parent,dc=com" /subtree /filter:"((&(objectClass=*)(cn=*\0acnf:*)))" /atts:objectclass,whencreated,whenchanged

    b. 属性、属性値、および存在する場合は下位オブジェクトを確認して、残るオブジェクトと削除するオブジェクトを決定します

    c. ディレクトリの最新のバックアップがあることを確認する

    d. LDP.EXE、ADSIEDIT、またはいずれかの Active Directory 管理ツールを使用して、競合するオブジェクト/コンテナーまたは競合しているオブジェクトを削除します。

  4. サードパーティ製コンポーネントが削除されたレプリケーション パートナーのテストを実行します。
    この問題の原因として、次のような複数のサード パーティ製品が見つかりました。

    1. ウイルス対策ソフトウェア
    2. Directory Synchronization

データ収集

Microsoft サポートからの支援が必要な場合は、「 Active Directory レプリケーションの問題に TSS を使用して情報を収集する」で説明されている手順に従って情報を収集することをお勧めします。

詳細

残留オブジェクト:

残留オブジェクトの Active Directory フォレストをクリーンアップする

データベースの破損:

イベント ID 1539 - データベースの整合性