Устранение неполадок с сообщением о внутренней ошибке на этапе репликации dcpromo

В этой статье описывается, как устранить внутреннюю ошибку, которая возникает на этапе репликации мастера установки Active Directory (Dcpromo).

Применимо к: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Оригинальный номер базы знаний: 265090

Примечание.

Домашние пользователи: Эта статья предназначена только для использования агентами технической поддержки и ИТ-специалистами. Если вы ищете помощь по проблеме, обратитесь в сообщество Майкрософт.

Сводка

Во время повышения объекты службы каталогов реплицируются в порядке последовательного номера обновления (USN) (от низкого до высокого) для схемы, конфигурации и домена. Внутренние ошибки могут возникать, если родительский контейнер для реплицированных дочерних объектов не существует в локальной службе каталогов.

Эта проблема может возникнуть в любом из следующих сценариев:

  • Существует живой объект, родительский объект которого был удален в прошлом, и срок действия родительского объекта истек и был преобразован в фантом. Таким образом, дочерний объект больше не может быть реплицирован. Вызов FillGuidAndSid для родительского объекта в ReplPrepareDataToShip не завершается, и сообщается об ошибке (8352 = ERROR_DS_NOT_AN_OBJECT). Эта ошибка приводит к выходу исходящей репликации дочернего объекта, и вы получаете внутреннее сообщение об ошибке репликации.

    Если существует динамический (или удаленный) объект с фантомным родительским объектом, Active Directory временно принимает динамический объект из-за требований к репликации вне порядка. Процедуры очистки диска, такие как сборка мусора, не должны быть в состоянии преобразовать удаленный объект в фантом, если родительский объект имеет дочерние объекты. Файл Ntdsa.dll windows 2000 с пакетом обновления 2 (SP2) предотвращает эту ситуацию в службе каталогов. Однако этот файл не устраняет проблему после ее возникновения.

  • Авторизуемая команда восстановления используется при использовании Windows Server 2003 или более поздней версии средства Ntdsutil. Ntdsutil.exe увеличивает usN указанных контейнеров и дочерних объектов в Active Directory. Бета-версии Ntdsutil.exe могут неправильно увеличить имя пользователя для контейнера Lost и Found. Когда объекты, предназначенные для контейнеров Lost и Found, реплицируются перед созданием контейнера в локальной службе каталогов, сообщается следующее событие:

    Событие 1084: сбой репликации с внутренней ошибкой

    Чтобы избежать этого сценария, контейнер Lost and Found обычно является одним из первых реплицируемых контейнеров.

Внутренние ошибки также могут возникать на существующих контроллерах домена Active Directory во время обычной репликации Active Directory или репликации Active Directory, инициированной администратором.

Действия по устранению неполадок с этим сообщением об ошибке

  1. Используйте монитор сети, журналы событий или Dcpromo.log, чтобы найти исходный сервер, используемый во время репликации Active Directory (при использовании мастера установки Active Directory).

  2. Если эта ошибка возникает при использовании мастера установки Active Directory и существует несколько потенциальных партнеров по репликации, используйте файл ответов мастера установки Active Directory, чтобы найти исходный сервер. Возможные исходные контроллеры домена включают контроллеры домена в родительском домене для новых дочерних доменов или контроллеры домена в том же домене для реплицированных контроллеров домена. Кроме того, если определенный исходный сервер является подозрительным, остановите службу сетевого входа на подозрительном компьютере и выполните поиск с другого контроллера домена.

  3. На исходном сервере найдите и щелкните следующий подраздел реестра:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Diagnostics

    Измените следующие значения:

    • 9 Внутренняя обработка. Задайте для уровня диагностики значение 1.
    • 7 Внутренняя конфигурация. Задайте для уровня диагностики значение 3.
    • 5 Событий репликации. Задайте для уровня диагностики значение 3.
  4. Используйте Редактор реестра для экспорта \NTDS ключа с исходного сервера на компьютер, который продвигается (например, Ntds.reg). Скопируйте файл на компьютер, на который возникает внутренняя ошибка при репликации. Если при запуске мастера установки Active Directory возникает внутренняя ошибка, скопируйте файл .reg на рабочий стол на проблемном контроллере домена, чтобы можно было легко запустить файл.

    Кроме того, нажмите клавишу Windows+R, а затем перетащите файл .reg из промежуточного Обозреватель окна, ориентированного на этот файл. Нажмите кнопку ОК , чтобы добавить содержимое файла .reg в реестр.

  5. Когда компьютер, который повышает уровень, начнет репликацию контекста именования схемы, запустите файл Ntds.reg, чтобы создать \NTDS\Diagnostics раздел реестра и параметры.

    Предупреждение

    Раздел NTDS\Diagnostics реестра не существует на этом этапе повышения и должен быть создан вручную на целевом контроллере домена. NTDS\Diagnostics Если раздел реестра загружается слишком рано при запуске мастера установки Active Directory, он перезаписывается значениями по умолчанию и события не регистрируются. Для существующих контроллеров домена параметры реестра можно включить в любое время.

  6. Проверьте журналы событий службы каталогов на исходном и целевом серверах. Внутренние события отображаются на исходном сервере как событие с идентификатором 1173. Просмотрите события репликации NTDS, возникающие до внутренней ошибки, чтобы найти глобальную универсальную идентификацию (GUID) реплицируемого объекта. (Могут выполняться попытки репликации одного и того же объекта. Запишите GUID для проблемного объекта или контейнера.

  7. Запустите Ldp.exe, инициализация подключения и привязка к исходному серверу. В меню Обзор выберите Удалить. Для различающегося пути имени введите <GUID=GUID#>, например GUID <=b2d605a4-b9e6-4505-ba59-895e91a9a7b5>. Задайте для область поиска значение Base, а затем удалите указанный GUID.

  8. Используя Ldp.exe, задайте для атрибута TombstoneLifetime значение 2 (значение в днях до удаления объектов с надгробным камнем). TombstoneLifetime находится в следующем пути с различающиеся имена:

    CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC= корневой домен ,DC=COM

    Убедитесь, что атрибут TombstoneLifetime присутствует, а его значение равно 2. Если значение меньше 2, значение недопустимо, а сервер использует значение по умолчанию 60 дней. (Вы также можете использовать ADSIEDIT для изменения этого атрибута.)

    Примечание.

    После двух дней ожидания удаления надгробных объектов может потребоваться подождать еще 60 минут или больше, прежде чем перезапустить контроллер домена и продолжить процесс сборки мусора.

  9. Инициируйте сборку мусора на исходном контроллере домена. Найдите и щелкните следующий раздел реестра:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Diagnostics key

    Измените следующие значения:

    • 6 Сборка мусора: задайте для уровня диагностики значение 3.
    • 9 Внутренняя обработка. Задайте для уровня диагностики значение 1.

    Чтобы принудительно выполнить сборку мусора, перезапустите контроллер домена. Сборка мусора должна выполняться через 15 минут после перезапуска контроллера домена. Теперь уровни диагностики записывают события сборки мусора в журнал событий службы каталогов.

  10. Чтобы убедиться, что объект удален, выполните следующую команду:

    repadmin /showmeta "<"GUID for deleted object">"
    

    Если появляется сообщение: нет такого объекта, объект уже успешно удален, и теперь можно успешно запустить мастер установки Active Directory. Если объект еще не прошел процесс сборки мусора, должны быть метаданные для атрибута isDeleted. Метка времени, связанная с атрибутом isDeleted, — это время удаления. Убедитесь, что время удаления установлено не менее двух дней назад, например:

    repadmin /showmeta "<GUID=b2d605a4-b9e6-4505-ba59-895e91a9a7b>"
    
  11. Когда эта проблема устранена, сбросьте уровень диагностика ведения журнала до 0 и задайте для времени существования надгробия значение, которое было раньше, или удалите значение полностью, чтобы предложить компьютеру использовать значения по умолчанию. Параметр TombstoneLifetime имеет решающее значение при определении срока использования состояния системы и резервных копий Active Directory. Если значение TombstoneLifetime равно 2, резервные ленты старше двух дней недоступны. Любой контроллер домена, который не работает в течение двух или более дней, должен быть восстановлен из резервной копии или переустановлен.

Ниже приведен пример событий, которые отображаются в журнале событий службы каталогов на исходном и целевом серверах:

Тип события: Источник события: NTDS Replication Event Category: Replication Event ID: 1240 Date: MM/DD/YY Time: HH:MM:SS AM|Pm User: S-1-5-21-1151542997-2719369742-1698538726-500 Computer: computer_source Description: Property 0 (objectClass) of object CN="NTDS Settings DEL:51c6913c-9221-4ac4-8513-9155dd7e15ad",CN="ZA9902000 DEL:37eabd48-bc98-483f-b2fd-9c8869e9c3ce",CN=Servers,CN=Bull,CN=Sites,CN=Configuration,DC=mma,DC=fr (GUID 51c6913c-9221-) 4ac4-8513-9155dd7e15ad) отправляется в DSA 6abec3d1-3054-41c8-a362-5a0c5b7d5d71.

Тип события: Предупреждение Источник события: NTDS Общая категория события: внутренняя обработка Идентификатор события: 1173 Дата: ММ/ДД/ГГ Время: ЧЧ:ММ:СС AM|Пользователь PM: S-1-5-21-1151542997-2719369742-1698538726-500 Компьютер: computer_source Описание: Внутреннее событие: Произошло исключение e0010002 с параметрами 8442 и 20a0 (внутренний идентификатор 11003a1).

Следующий текст отображается в журнале мастера установки Active Directory на компьютере, для которого выполняется повышение. В этом примере Dcpromo.log файле компьютер, который повышает уровень , \\computer_promoted, сталкивается с "внутренней ошибкой" в мастере установки Active Directory при поиске из \\computer_source. Обратите внимание на ошибку 8442, возникающую при репликации одного из трех контекстов именования ("Система репликации обнаружила внутреннюю ошибку"). В этом примере показано, что ошибка возникает в контексте именования конфигурации:

MM/DD HH:MM:SS [INFO] Репликация CN=Configuration,DC=win2ktest,DC=A,DC=com: получено 917 объектов из 1783.
MM/DD HH:MM:SS [INFO] Репликация CN=Configuration,DC=win2ktest,DC=A,DC=com: получено 1049 из 1783 объектов.
MM/DD HH:MM:SS [INFO] Репликация CN=Configuration,DC=win2ktest,DC=A,DC=com: получено 1181 из 1783 объектов.
MM/DD HH:MM:SS [INFO] Репликация CN=Configuration,DC=win2ktest,DC=A,DC=com: получено 1200 объектов из 1783.
MM/DD HH:MM:SS [INFO] Ошибка . Службе каталогов не удалось реплицировать раздел CN=Configuration,DC=test,DC=A,DC=com из удаленного сервера computer_source.test.a.com. (8442)
MM/DD HH:MM:SS [INFO] NtdsInstall для test.a.com возвращенного 8442
MM/DD HH:MM:SS [INFO] DsRolepInstallDs возвращается 8442
MM/DD HH:MM:SS [ERROR] Не удалось установить в службу каталогов (8442)
MM/DD ЧЧ:ММ:СС [INFO] Запуск службы NETLOGON
MM/DD HH:MM:SS [INFO] Настройка службы NETLOGON до 2 возвращается 0
MM/DD HH:MM:SS [INFO] Поиск учетной записи компьютера forcomputer_promotedon \computer_source.test.a.com...
MM/DD HH:MM:SS [INFO] Настройка учетной записи сервера
MM/DD HH:MM:SS [INFO] NtdsSetReplicaMachineAccount вернул 0
MM/DD HH:MM:SS [INFO] Предпринята попытка перемещения accountcomputer_sourceto CN=GAXGPTS01,CN=Computers,DC=test,DC=A,DC=com