Résoudre les problèmes de message « erreur interne » lors de la phase de réplication de Dcpromo

S’applique à : Windows Server, version 2004, all editionsWindows Server, version 1903, all editionsWindows Server 2019, all editions

Utilisateurs à domicile: cet article est destiné uniquement aux agents du support technique et aux professionnels de l’informatique. Si vous avez besoin d’aide pour résoudre un problème,Posez une question à la communauté Microsoft.

Résumé


Cet article décrit comment résoudre un message « erreur interne » reçu lors de la phase de réplication de l’Assistant Installation d’Active Directory (dcpromo).

Informations supplémentaires


Pendant la promotion, les objets de service d’annuaire sont répliqués dans l’ordre du numéro de séquence de mise à jour (USN) (du plus faible au plus élevé) pour le schéma, la configuration et le domaine. Des erreurs internes peuvent se produire quand un conteneur parent d’objets enfants répliqués n’existe pas dans le service d’annuaire local.

Ce problème peut se produire dans l’un des cas suivants :

  • Il existe un objet en temps réel dont le parent a été supprimé par le passé, et le parent a expiré et a été converti en fantôme. Par conséquent, l’objet enfant ne peut plus être répliqué. L’appel à FillGuidAndSid pour l’objet parent dans ReplPrepareDataToShip does’nt réussit et une erreur est signalée (« 8352 = ERROR_DS_NOT_AN_OBJECT »). Cette erreur entraîne la fermeture de la réplication sortante de l’objet enfant et vous recevez un message « erreur interne de réplication ». S’il existe un objet Live (ou Deleted) ayant un parent fantôme, Active Directory accepte temporairement l’objet en raison de la configuration requise pour la réplication. Les procédures de nettoyage de disque, comme le nettoyage de la mémoire, ne doivent pas être en mesure de convertir un objet supprimé en Phantom si le parent a des objets enfants. Le fichier ntdsa. dll de Windows 2000 Service Pack 2 (SP2) empêche cette situation dans le service d’annuaire. Toutefois, ce fichier ne résout pas le problème une fois qu’il s’est produit.
  • Vous utilisez la commande de restauration faisant autorité lorsque vous utilisez Windows Server 2003 ou une version ultérieure de l’outil Ntdsutil. Ntdsutil. exe augmente l’USN des conteneurs et objets enfants spécifiés dans Active Directory. Les versions bêta de Ntdsutil. exe risquent d’augmenter de manière incorrecte l’USN du conteneur perdu et trouvé. Lorsque des objets destinés au conteneur perdus et trouvés sont répliqués avant la création du conteneur dans le service d’annuaire local, l’événement suivant est signalé :
    Pour éviter ce problème, le conteneur perdus et trouvés est généralement l’un des premiers conteneurs répliqués.

Des erreurs internes peuvent également se produire sur les contrôleurs de domaine Active Directory existants lors de la réplication Active Directory normale ou à l’administrateur.

Résoudre les problèmes de ce message d’erreur

Procédez comme suit :

  1. Utilisez l’outil Moniteur réseau, journaux des événements ou Dcpromo. log pour localiser le serveur source utilisé lors de la réplication Active Directory (lorsque vous utilisez l’Assistant Installation d’Active Directory).
  2. Si cette erreur se produit lorsque vous utilisez l’Assistant Installation d’Active Directory et qu’il existe plusieurs partenaires de réplication potentiels, utilisez le fichier de réponses de l’Assistant Installation d’Active Directory pour trouver le serveur source. Les contrôleurs de domaine source possibles incluent les contrôleurs de domaine dans le domaine parent pour les nouveaux domaines enfants ou les contrôleurs de domaine dans le même domaine pour les contrôleurs de domaine répliqués. Par ailleurs, si un serveur source spécifique est suspect, arrêtez le service d’ouverture de session sur l’ordinateur suspect et recherchez à partir d’un autre contrôleur de domaine.
  3. Sur le serveur source, recherchez la sous-clé de Registre suivante et cliquez dessus : HKEY_LOCAL_MACHINE \System\currentcontrolset\services\ntds\diagnosticsmodifier les valeurs suivantes :
    • 9 traitement interne: définissez le niveau de diagnostic sur 1.
    • 7 configuration interne: définissez le niveau de diagnostic sur 3.
    • 5 événements de réplication: définissez le niveau de diagnostic sur 3.
  4. Utilisez l’éditeur du Registre pour exporter la clé \NTDS du serveur source vers l’ordinateur promu (par exemple, NTDS. reg). Copiez le fichier sur l’ordinateur qui rencontre l’erreur interne en cas de réplication. Si le message « erreur interne » s’affiche lors de l’exécution de l’Assistant Installation de Active Directory, copiez le fichier. reg sur le Bureau sur le contrôleur de domaine problématique pour que le fichier puisse être facilement démarré. Vous pouvez égalementappuyer sur la touche Windows + R, puis faire glisser le fichier. reg à partir de la fenêtre de l’Explorateur intermédiaire, qui est prioritaire sur ce fichier. Sélectionnez OK pour ajouter le contenu du fichier. reg au registre.
  5. Lorsque l’ordinateur qui est promu commence à répliquer le contexte d’appellation de schéma, exécutez le fichier Ntds. reg pour générer la clé de Registre et les paramètres de \NTDS\Diagnostics.
  6. Examinez les journaux des événements du service d’annuaire sur les serveurs source et de destination. Les événements internes sont affichés sur le serveur source en tant que « ID d’événement 1173 ». Passez en revue les événements de réplication NTDS qui se produisent avant l’erreur interne lors de la recherche de l’identification universelle globale (GUID) de l’objet répliqué. (Il est possible qu’il y ait des tentatives de retour en arrière pour répliquer le même objet). Enregistrez le GUID pour l’objet ou le conteneur problématique.
  7. Démarrez LDP. exe, lancez une connexion, puis effectuez une liaison par rapport au serveur source. Dans le menu de navigation , sélectionnez supprimer. Pour le chemin d’accès du nom unique, tapez <GUID =GUID #>, par exemple <GUID = b2d605a4-b9e6-4505-ba59-895e91a9a7b5>. Définissez l’étendue de la recherche sur base, puis supprimez le GUID spécifié.
  8. À l’aide de Ldp. exe, définissez la valeur de l’attribut TombstoneLifetimesur 2 (la valeur du champ jours avant la suppression de l’objet désactivé). TombstoneLifetime se trouve dans le chemin de nom unique suivant : CN = Directory Service, CN = Windows NT, CN = Services, CN = Configuration, DC =Domain root, DC = com  

    Vérifiez que l’attribut TombstoneLifetime est présent et que sa valeur est 2. Si la valeur est inférieure à 2, la valeur n’est pas valide et le serveur utilise la valeur par défaut de 60 jours. (Vous pouvez également utiliser adsied pour modifier cet attribut.) Remarque Après avoir attendu deux jours avant la suppression des objets désactivés, il est possible que vous deviez patienter plus de 60 minutes avant de redémarrer le contrôleur de domaine et poursuivre le processus de nettoyage de la mémoire.

  9. Lancez un nettoyage de la mémoire sur le contrôleur de domaine source. Recherchez la clé de Registre suivante et cliquez dessus : HKEY_LOCAL_MACHINE clé \System\currentcontrolset\services\ntds\diagnosticsmodifier les valeurs suivantes :
    • 6 nettoyage de la mémoire: définissez le niveau de diagnostic sur 3.
    • 9 traitement interne: définissez le niveau de diagnostic sur 1.
    Pour forcer un nettoyage de la mémoire, redémarrez le contrôleur de domaine. Le nettoyage de la mémoire doit être exécuté 15 minutes après le redémarrage du contrôleur de domaine. Les niveaux de diagnostic enregistrent désormais les événements de nettoyage de la mémoire dans le journal des événements du service d’annuaire.
  10. Pour vérifier que l’objet a été supprimé, exécutez la commande suivante : repadmin/showmeta "<" GUID pour l’objet supprimé ">"si vous recevez un message "aucun objet", l’objet a déjà été supprimé et vous pouvez désormais exécuter l’Assistant Installation d’Active Directory. Si l’objet n’a pas encore reçu le processus de nettoyage de la mémoire, il devrait exister des métadonnées pour l’attribut IsDeleted . L’horodatage associé à l’attribut IsDeleted est l’heure de suppression. Vérifiez que la durée de suppression est définie pour au moins deux jours, par exemple : repadmin/showmeta "<GUID = b2d605a4-b9e6-4505-ba59-895e91a9a7b>"
  11. Lorsque ce problème est résolu, réinitialisez les niveaux de journalisation des diagnostics sur 0 et rétablissez la durée de vie de l’outil de suppression, puis supprimez la valeur pour inviter l’ordinateur à utiliser les valeurs par défaut. Le paramètre TombstoneLifetimeest essentiel dans la définition de la durée de vie utile de l’état du système et des sauvegardes Active Directory. Lorsque TombstoneLifetime est défini sur 2, les bandes de sauvegarde de plus de deux jours sont inutilisables. Tout contrôleur de domaine qui a été arrêté depuis au moins deux jours doit être restauré à partir d’une sauvegarde ou réinstallé.

Le texte suivant est un exemple des événements signalés dans le journal des événements du service d’annuaire sur le serveur source et de destination :

Le texte suivant est transmis dans le journal de l’Assistant Installation d’Active Directory sur l’ordinateur en cours de promotion. Dans cet exemple de fichier Dcpromo. log, l’ordinateur qui est en promotion, \ \computer_promoted, rencontre le message « erreur interne » dans l’Assistant Installation d’Active Directory lorsque le classement est lecomputer_source. Notez l’erreur 8442 qui se produit lors de la réplication de l’un des trois contextes d’attribution de noms (« le système de réplication a rencontré une erreur interne »). Cet exemple montre que l’erreur s’est produite sur le contexte d’appellation de configuration :