Identyfikatory zdarzeń replikacji usługi Active Directory 2108 i 1084 występują podczas replikacji przychodzącej Active Directory Domain Services

Ten artykuł zawiera rozwiązanie problemu polegającego na uzyskaniu identyfikatorów zdarzeń 2108 i 1084 podczas replikacji przychodzącej Active Directory Domain Services (AD DS).

Dotyczy: Windows Server 2016, Windows Server 2012 R2
Oryginalny numer KB: 837932

Symptomy

W przypadku replikacji przychodzącej Active Directory Domain Services (AD DS) docelowy kontroler domeny z systemem Microsoft Windows Server 2003 z dodatkiem Service Pack 1 (SP1) za pośrednictwem Windows Server 2016 rejestruje następujące zdarzenie w dzienniku usługi katalogowej:

Identyfikator zdarzenia 1084: Zdarzenie wewnętrzne: Active Directory Domain Services nie może zaktualizować następującego obiektu przy użyciu zmian otrzymanych z następującej źródłowej usługi katalogowej. Dzieje się tak, ponieważ wystąpił błąd podczas stosowania zmian Active Directory Domain Services w usłudze katalogowej.

Obiekt: ŚCIEŻKA CN=<cn>

Identyfikator GUID obiektu: <objectguid>

Źródłowa usługa katalogowa: NTDSA._msdcs.<forst główna nazwa domeny DNS>

Synchronizacja usługi katalogowej ze źródłową usługą katalogową jest zablokowana, dopóki ten problem z aktualizacją nie zostanie rozwiązany.

Ta operacja zostanie ponowiona podczas następnej zaplanowanej replikacji.

Akcja użytkownika:

Uruchom ponownie komputer lokalny, jeśli ten warunek wydaje się być związany z małą ilością zasobów systemowych (na przykład małą ilością pamięci fizycznej lub wirtualnej).

Dodatkowe dane:

Wartość błędu: <ciąg błędu kodu><błędu>

Uwaga

  • W tekście <Wartość błędu kod> błędu i <ciąg> błędu reprezentują rzeczywiste wartości, które są wyświetlane we wpisie dziennika.
  • Zdarzenie 1804 jest rejestrowane od systemu Windows 2000 Server.

Docelowe kontrolery domeny z systemem Windows Server 2003 z dodatkiem SP1 również rejestrują następujące zdarzenie w dzienniku usługi katalogowej:

Identyfikator zdarzenia 2108: To zdarzenie zawiera procedury naprawy dla zdarzenia 1084, które zostało wcześniej zarejestrowane. Ten komunikat wskazuje konkretny problem ze spójnością bazy danych Active Directory Domain Services w tym miejscu docelowym replikacji. Wystąpił błąd bazy danych podczas stosowania zreplikowanych zmian do następującego obiektu. Baza danych miała nieoczekiwaną zawartość, co uniemożliwiało dokonanie zmiany.

Uwaga

  • Zdarzenie 2108 jest rejestrowane w systemie Windows Server 2003 po zainstalowaniu dodatku SP1.
  • Jest to zdarzenie partnerskie zdarzenia 1084.

Przyczyna

Te zdarzenia występują, gdy kontroler domeny nie może zapisać zmiany transakcyjnej w lokalnej kopii bazy danych usługi Active Directory.

Rozwiązanie

Aby rozwiązać ten problem, wykonaj następujące kroki. Ponów próbę wykonania operacji replikacji po każdym kroku, który wprowadza zmianę.

  1. Upewnij się, że na woluminach, które hostują bazę danych usługi Active Directory, jest dostępna wystarczająca ilość wolnego miejsca na dysku, a następnie ponów próbę wykonania operacji. Wykonaj następujące kroki, aby zwolnić dodatkowe miejsce na dysku:

    1. Przenieś niepowiązane pliki do innego woluminu.

    2. Wykonaj kopię zapasową stanu systemu. Ten proces zmniejsza rozmiar plików dziennika transakcji. Aby uzyskać więcej informacji, zobacz Jak używać funkcji tworzenia kopii zapasowych do tworzenia kopii zapasowych i przywracania danych w systemie Windows Server 2003.

    3. Wykonaj defragmentację usługi Active Directory w trybie offline. Aby uzyskać więcej informacji, zobacz Jak wykonać defragmentację bazy danych usługi Active Directory w trybie offline.

  2. Upewnij się, że dyski fizyczne hostujące plik Ntds.dit i pliki dziennika transakcji nie mają włączonej kompresji systemu plików NTFS. Aby to potwierdzić, kliknij prawym przyciskiem myszy literę dysku w obszarze Mój komputer, a następnie upewnij się, że pole wyboru Kompresuj dysk w celu zapisania miejsca na dysku nie jest zaznaczone.

  3. Upewnij się, że dyski fizyczne hostujące plik Ntds.dit i pliki dziennika transakcji są wyraźnie wykluczone ze zdalnych i lokalnych programów antywirusowych. Aby uzyskać więcej informacji, zobacz dokumentację oprogramowania antywirusowego.

  4. Jeśli docelowy kontroler domeny zawiera wykaz globalny, a błąd występuje w jednej z partycji tylko do odczytu, użyj jednej z następujących metod, aby rozwiązać problem:

    • Metoda 1. Użyj opcji ponownego hostowania narzędzia Repadmin.exe, aby ponownie hostować partycję, której dotyczy problem.

      Narzędzie Repadmin.exe jest instalowane na komputerach z rolą kontrolera domeny i jest instalowane razem z narzędziem RSAT na stacjach roboczych i serwerach członkowskich. W tym celu wpisz następujące polecenie w wierszu polecenia, gdzie domain_controller jest nazwą docelowego kontrolera domeny, a good_source_domain_controller_name jest nazwą innego kontrolera domeny:

      repadmin /rehost domain_controller naming_context good_source_domain_controller_name
      
    • Metoda 2. Skonfiguruj kontroler domeny tak, aby nie był już serwerem wykazu globalnego. Wykonaj następujące czynności:

      1. Kliknij przycisk Start, wskaż pozycję Narzędzia administracyjne, a następnie kliknij pozycję Lokacje i usługi Active Directory.
      2. Znajdźdomyślne serwerynazw \ pierwszej lokacji\ domain_controller_name \ poddrzewoustawień NTDS.
      3. Kliknij prawym przyciskiem myszy pozycję Ustawienia NTDS, a następnie kliknij pozycję Właściwości.
      4. Kliknij, aby wyczyścić pole wyboru Wykaz globalny , a następnie kliknij przycisk OK.
    • Metoda 3

      Jeśli błąd występuje w partycji programu, użyj narzędzia Ntdsutil.exe, aby zmienić replikę hostującą partycję programu.

  5. Użyj narzędzia innej firmy, takiego jak narzędzie FileMon, aby określić, czy program lub użytkownik uzyskuje dostęp do bazy danych usługi Active Directory, plików dziennika transakcji lub pliku Edp.tmp. Jeśli istnieje działanie dostępu do plików, zatrzymaj usługi odpowiedzialne za działanie. Aby uzyskać więcej informacji na temat narzędzia FileMon, zobacz FileMon for Windows v7.04 (PlikMon dla systemu Windows w wersji 7.04).

  6. Określ, czy problem jest związany z obiektem nadrzędnym obiektu usługi Active Directory na docelowym kontrolerze domeny. Aby to zrobić, wykonaj następujące kroki.

    1. Na źródłowym kontrolerze domeny tymczasowo przenieś obiekt, do którego odwołuje się zdarzenie 1084, do kontenera jednostki organizacyjnej (OU). Jednostka organizacyjna musi nie być powiązana z bieżącym kontenerem. Na przykład przenieś obiekt do nowego kontenera poza katalog główny domeny.

    2. Jeśli replikacja zostanie zakończona po przeniesieniu obiektu, przenieś obiekt z powrotem do oryginalnego kontenera.

    3. Wymuś propagator deskryptora zabezpieczeń, aby ponownie skompilować element źródłowy kontenera obiektów w bazie danych, która istnieje zarówno na źródłowym, jak i docelowym kontrolerze domeny. Aby to zrobić, wykonaj następujące kroki.

      1. Upewnij się, że są zainstalowane narzędzia obsługi systemu Windows Server 2003. Narzędzia pomocy technicznej są dostępne w systemie Windows Server 2003 CD-ROM w folderze Support\Tools. Kliknij dwukrotnie plik Suptools.msi, aby zainstalować narzędzia.

      2. Kliknij przycisk Start, kliknij przycisk Uruchom, wpisz ldp, a następnie kliknij przycisk OK.

      3. Kliknij pozycję Połączenie, kliknij pozycję Połącz, a następnie wpisz nazwę serwera, z którym chcesz nawiązać połączenie.

        Uwaga

        Połączysz się za pośrednictwem portu 389 dla usługi Active Directory.

      4. Kliknij pozycję Połączenie, kliknij pozycję Powiązanie, a następnie wpisz nazwę użytkownika administracyjnego, hasło i domenę. (Musisz użyć poświadczeń administratora domeny lub administratora przedsiębiorstwa). Kliknij przycisk OK.

      5. W menu Przeglądaj kliknij przycisk Modyfikuj. Pozostaw pole tekstowe DN puste. W polu tekstowym Atrybut wpisz FixUpInheritance. Kliknij przycisk Tak w polu tekstowym Wartość .

      6. W obszarze Operacja kliknij pozycję Dodaj.

      7. Kliknij przycisk Enter , aby wypełnić obszar Lista wpisów .

        Uwaga

        W obszarze Lista wpisów zostanie wyświetlony komunikat [Add]fixupinheritance:yes .

      8. Kliknij przycisk Uruchom.

        Uwaga

        W okienku po prawej stronie jest teraz wyświetlany stan Zmodyfikowany i uruchamiany jest propagator deskryptora zabezpieczeń. Środowisko uruchomieniowe propagatora deskryptora zabezpieczeń zależy od rozmiaru bazy danych usługi Active Directory. Proces jest zakończony, gdy licznik Zdarzeń propagacji zabezpieczeń usług DS w obiekcie NTDS Performance zwraca wartość zero.

      9. Kliknij przycisk Zamknij, kliknij pozycję Połączenie, a następnie kliknij pozycję Zakończ.

  7. Na źródłowym kontrolerze domeny wpisz repadmin /showmeta distinguished_name_path w wierszu polecenia, a następnie wyświetl metadane obiektu dla ścieżki nazwy wyróżnianej, do którego odwołuje się zdarzenie 1084. Powtórz ten krok na docelowym kontrolerze domeny. Poszukaj niespójnych wartości, które obejmują, ale nie są ograniczone do następujących:

    • Nieprawidłowe nazwy i liczby atrybutów, które pojawiają się w obiekcie
    • Nieprawidłowe sygnatury czasu lub daty źródłowej
    • Nieprawidłowe numery lokalnej sekwencji aktualizacji (USN)

    Nieprawidłowe wartości mogą wskazywać na problem ze stroną bazy danych hostującą obiekt.

    Aby użyć narzędzia Repadmin.exe, gdy ścieżka nazwy wyróżnianej odwołuje się do obiektu aktywnego, wpisz następujące polecenie w wierszu polecenia:

    repadmin /showmeta remote_domain_controller_name distinguished_name_path_of_reference _object
    

    Jeśli obiekt znajduje się w usuniętym kontenerze obiektów lub jeśli nie możesz użyć narzędzia Repadmin.exe do znalezienia obiektu, użyj odwołania identyfikatora GUID obiektu, aby znaleźć obiekt. Do tego identyfikatora GUID odwołuje się zdarzenie 1084. W tym celu wpisz następujące polecenie w wierszu polecenia:

    repadmin /showmeta remote_domain_controller_name "GUID_for_the_object that_is_referenced_in_Event_ID_1084"
    

    Jeśli na przykład zdarzenie 1084 i zdarzenie 2108 odwołują się do obiektu, w którym identyfikator GUID to b49cd496-98a2-4500-bb08-58550c2f79ac, wpisz repadmin /showmeta "<GUID=b49cd496-98a2-4500-bb08-58550c2f79ac>".

    Uwaga

    Znaki cudzysłowu i nawiasy są wymagane.

  8. Uzyskaj najnowsze narzędzie Ntdsutil.exe, instalując najnowszy dodatek Service Pack dla systemu operacyjnego. Użyj narzędzia Ntdsutil.exe, aby sprawdzić integralność bazy danych usługi Active Directory na źródłowym kontrolerze domeny.

    Przed uruchomieniem komputera w trybie przywracania usług katalogowych uzyskaj hasło dla konta administratora w trybie offline. Jeśli nie znasz hasła konta administratora, przed rozpoczęciem pracy w tym trybie zresetuj hasło trybu przywracania usług katalogowych. Na kontrolerach domeny z systemem Windows 2000 z dodatkiem Service Pack 2 (SP2) i nowszym użyj polecenia Setpwd.exe. Polecenie Setpwd.exe znajduje się w folderze %Systemroot%\System32. Na kontrolerach domeny opartych na systemie Windows Server 2003 użyj polecenia Ntdsutil Set Directory Services Restore Mode Password .

    Aby uzyskać więcej informacji na temat trybu przywracania usług katalogowych, zobacz komunikat o błędzie "Usługi katalogowe nie mogą uruchomić" podczas uruchamiania kontrolera domeny opartego na systemie Windows lub SBS.

    Aby uzyskać więcej informacji na temat sposobu zmiany hasła w systemie Windows Server 2003, zobacz komunikat o błędzie "Usługi katalogowe nie mogą uruchomić" podczas uruchamiania kontrolera domeny opartego na systemie Windows lub SBS.

  9. Uruchom ponownie źródłowy kontroler domeny, a następnie naciśnij klawisz F8, aby uruchomić tryb przywracania usług katalogowych. W wierszu polecenia wpisz ntdsutil files integrity, a następnie naciśnij klawisz Enter.

    Uwaga

    To polecenie potwierdza integralność bazy danych.

    • Jeśli narzędzie Ntdsutil zgłasza, że baza danych jest uszkodzona i masz repliki kontekstów nazewnictwa na źródłowym kontrolerze domeny, wymuś obniżenie poziomu źródłowego kontrolera domeny, a następnie ponownie podwyższ poziom po sprawdzeniu integralności sterowników, oprogramowania układowego oraz dysków fizycznych hostujących bazę danych usługi Active Directory i pliki dziennika transakcji.

    • Jeśli baza danych jest uszkodzona i nie istnieją repliki kontekstu nazewnictwa na źródłowym kontrolerze domeny, przywróć najnowszy stan systemu. Użyj narzędzia NTDSutil.exe, aby ponownie potwierdzić integralność bazy danych. Jeśli nadal jest wyświetlany komunikat o uszkodzeniu, przywróć starsze kopie zapasowe do momentu potwierdzenia integralności kontrolera domeny.

    • Jeśli baza danych jest nadal uszkodzona, przywróć najnowszą kopię zapasową stanu systemu, a następnie w wierszu polecenia wpisz:

      ntdsutil files recover
      

      Użyj narzędzia NTDSutil.exe ponownie potwierdź integralność bazy danych. Jeśli baza danych przejdzie sprawdzanie integralności, wykonaj defragmentację partycji dysku w trybie offline. Aby uzyskać więcej informacji, zobacz Jak wykonać defragmentację bazy danych usługi Active Directory w trybie offline.

      Aby sprawdzić integralność bazy danych, wpisz następujące polecenie w wierszu polecenia, a następnie naciśnij klawisz Enter, gdzie database_name jest nazwą bazy danych usługi Active Directory:

      esentutl.exe /g database_name
      

      Na koniec użyj opcji Uruchom system Windows normalnie, aby ponownie uruchomić komputer, a następnie ponów próbę replikacji ze źródłowego kontrolera domeny do docelowego kontrolera domeny, którego dotyczy problem. Jeśli baza danych nie sprawdzi integralności, kontroler domeny musi zostać wycofany. Do migrowania obiektów służy narzędzie do migracji usługi Active Directory (ADMT). Możesz również użyć narzędzi Ldifde.exe i Csvde.exe, aby wyeksportować obiekty, które zostaną zaimportowane do nowego docelowego kontrolera domeny.

      Aby uzyskać więcej informacji na temat używania narzędzi Ldifde.exe i Csvde.exe, zobacz Przewodnik krok po kroku dotyczący zbiorczego importowania i eksportowania do usługi Active Directory.

  10. Jeśli te kroki nie powiodą się, a błąd replikacji będzie kontynuowany, obniż poziom kontrolera domeny, potwierdź integralność dysków fizycznych i woluminów hostowanych w pliku Ntds.dit i podsystemie dysku, a następnie ponownie podwyższ poziom kontrolera domeny. Użyj tej samej nazwy komputera.

  11. Użyj polecenia ntdsutil files compact, aby wykonać defragmentację bazy danych usługi Active Directory w trybie offline. Aby uzyskać więcej informacji, zobacz Wykonywanie defragmentacji bazy danych usługi Active Directory w trybie offline .

  12. W wierszu polecenia wpisz następujące polecenie, a następnie naciśnij klawisz Enter:

    ntdsutil "semantic database analysis" "go"
    

    Uwaga

    Znaki cudzysłowu w tym przykładzie są wymagane do uruchomienia semantycznego polecenia analizy bazy danych przy użyciu pojedynczego argumentu wiersza polecenia.

    Jeśli zgłoszono błędy, type ntdsutil go fixup, a następnie naciśnij klawisz Enter.

    Uwaga

    Polecenia semantyczne bazy danych nie wykonują naprawy strat w bazach danych usługi Active Directory, takich jak pre-Windows Server 2003 Service Pack 1 Ntdsutil naprawy plików lub Esentutl /p poleceń.

    Zastrzeżenie dotyczące innych firm

    Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.

Zbieranie danych

Jeśli potrzebujesz pomocy ze strony pomocy technicznej firmy Microsoft, zalecamy zebranie informacji, wykonując kroki wymienione w temacie Zbieranie informacji przy użyciu usługi TSS w przypadku problemów z replikacją usługi Active Directory.