Powered by Blogger.

Windows Server 2008–Domain Controller Failed to start

I was encountering an error on my virtual Domain Controller some days ago, resulting in an ugly blue screen:

“STOP: c00002e2 Directory Services could not start because of the following error: A device attached to the system is not functioning.
Error Status: 0xc0000001. Please shutdown this system and reboot into Directory Services Restore Mode, check the event log for more detailed information.”
Since this is my only DC in the VM environment I am using for tests and development, and I didn’t had a backup or snapshot I needed it back really badly! Smile
I found some entries in a forum that discussed mixed up drive letters, so first attempt was to check this. Indeed, my system partition lost the letter C:\ for some reason, so I switched that back.

It didn’t really help. Some other posts described methods to switch back to a further date via the BIOS, but I was not able to do so, and the posts mostly discussed the issue after restoring an old backup file.
So I searched further, and came across a nice post, mentioning the following steps executed in the Directory Services restore mode. It basically makes use of the Active Directory Domain Services management command line tool NTDSUTIL and checks for corruptions of the service. It furthermore uses the ESENTUTL tool to check for the integrity of the JET database.
  1. Restart the server and press F8 key, select Directory Services restore mode.
  2. Log in with the local administrator username and password
  3. Type: cd \windows\system32
  4. Type: NTDSUTIL
  5. Type: activate instance NTDS
  6. Type: files
  7. If you encounter an error stating that the Jet engine could not be initialized exit out of ntdsutil.
  8. Type: cd\
  9. Type: md backupad
  10. Type: cd \windows\ntds
  11. Type: copy ntds.dit c:\backupad
  12. Type: cd \windows\system32
  13. Type: esentutl /g c:\windows\ntds\ntds.dit
  14. This will perform an integrity check, (the results indicate that the jet database is corrupt)
  15. Type: esentutl /p   c:\windows\ntds\ntds.dit
  16. Agree with the prompt
  17. Type: cd \windows\ntds
  18. Type: move *.log c:\backupad   (or just delete the log files)
This should complete the repair.  To verify that the repair has worked successfully:
  1. Type: cd \windows\system32
  2. Type: ntdsutil
  3. Type: activate instance ntds
  4. Type: files        (you should no longer get an error when you do this)
  5. Type: info       (file info should now appear correctly)
One final step, now sure if it’s required:
From the NTDSUTIL command prompt:
  1. Type: Semantic Database Analysis
  2. Type: Go
This worked for me like a charm. Thanks to dbutch1976 for the nice manual to fix this issue!
    Blogger Comment
    Facebook Comment