Este fallo se suele deber a que uno de los archivos con información del directorio activo se corrompe.
Para solucionarlo lo podemos hacer o bien pulsando F8 y accediendo al modo de “Restauración de Servicios de Directorio Activo” o bien si no podemos, y cuando arranca nos da la opción de arrancar el Windows normalmente o intentar reparar Windows, podemos acceder intentando reparar Windows y en las opciones avanzadas seleccionar la ventana de MSDOS para hacerlo.
Si nos pide usuario y contraseña para entrar (con F8) utilizaremos una cuenta de administrador.
Una vez tengamos una ventana de comandos para escribir, haremos lo siguiente (suponemos en este ejemplo que el disco duro de sistema es C:):
cd c:\windows\system32 ntdsutil activate instance NTDS files
Si da algún error indicando que “Jet engine could not be initialized” saldremos de ntdsutil.
En algún caso nos hemos encontrado que nos daba fallo indicando que el servidor no era servidor de directorio activo, nos hemos salido igual y hemos hecho lo siguiente:
cd\ md backupad cd c:\windows\ntds copy mtds.dit c:\backupad cd c:\windows\system32 esentutil /g c:\windows\ntds\ntds.dit
Esto lo que hace es un chequeo de integridad del archivo.
esentutl /p c:\windows\ntds\ntds.dit
Y aceptaremos la pregunta que nos sale.
cd c:\windows\ntds move *.log c:\backupad
O podemos directamente borrar los logs.
Con esto la reparación está completa y Windows arrancará. Podemos verificar la reparación de nuevo con ntdsutil:
cd c:\windows\system32 ntdsutil activate instance ntds files info
Y no dará ningún error y la información aparecerá correctamente.
Un último paso, que no es necesario las veces que hemos hecho esta reparación pero solo por si acaso, desde dentro del ntdsutil escribir:
semantic database analysis go
Con esto el servidor volverá a arrancar.
Un saludo a todos.