Проблема

После внезапного выключения электричества, контроллер домена на базе Windows Server 2012R2 (виртуальная машина на standalone VMWareESXi 6.5 - без vcenter) ушел в несознанку и при каждой загрузке вываливается в синий экран с ошибкой:

PAGE_FAULT_IN_NONPAGED_AREA

Все предварительные реанимационные мероприятия проведены. Создан снепшот, выполнен chkdsk (ошибок не обнаружено).
Судя по всему проблема в реестре.

Решение

После очередной перезагрузки стартует Repair Mode.
Там жмем Troubleshoot и запускаем Command Prompt.
Проверяем, что на диске С у нас есть наш Windows:

c:
dir

Смело (ведь у нас есть снепшот) восстанавливаем реестр из бекапа:

copy /y c:\windows\system32\config\regback\* c:\windows\system32\config\
exit

И перезагружаемся.
В результате у меня система начала грузиться иначе - теперь ошибка была уже 0xc00002e2 - Directory Services Could Not Start. А это гораздо лучше!!!
Теперь нам надо загрузиться в режим восстановления служб Active Directory - Directory Services Repair Mode (DSRM).
Для этого, когда комп опять перезагрузится в Repair Mode жмем Troubleshoot и затем Startup Settings и Restart. В результате мы попадем в меню, которое раньше (в виндах до 8/2012) было доступно по F8.
Там выбираем Directory Services Repair Mode. В моем случае винда загрузилась в GUI.
Теперь логинимся локальным админом и начинаем чинить.

1. Делаем бекап папки c:\Windows\NTDS
2. Запускаем cmd и выполняем:

cd c:\Windows\NTDS
del /q /f *.log
ntdsutil

3. В консоли NTDSUTIL выполняем:

activate instance ntds
files
info

Смотрим и видим, что у нас действительно используются файлы из папки c:\Windows\NTDS.
4. Выходим из NTDSUTIL с помощью команды q.
5. Собственно сама починка. В командной строчке выполняем:

esentutl /p "c:\windows\ntds\ntds.dit"

На вопрос отвечаем утвердительно.
6. Теперь выполняем дефрагментацию базы данных AD.
Для этого создаем временную папку:

cd C:\Windows\NTDS
md Temp

7. Запускаем NTDSUTIL

NTDSUTIL

8. В консоли NTDSUTIL выполняем:

activate instance ntds
files
info
compact to "C:\Windows\NTDS\Temp"

Выходим из ntdsutil с помощью q
9. Копируем дефрагментированную базу изз временной папки:

copy /y C:\Windows\NTDS\Temp\ntds.dit C:\Windows\NTDS\ntds.dit
del /q /f C:\Windows\NTDS\*.log

10. Перезагружаемся!!! Все должно работать!
https://community.spiceworks.com/topic/1345241-2012-r2-dc-crash-and-won-t-boot-with-error-0xc00002e2
https://ithinkvirtual.com/2017/11/12/fixing-a-corrupt-domain-controller-stop-code-0x00002e2/
http://windowssystemsadmin.blogspot.com/2017/05/how-to-fix-c00002e2-directory-services.html

Enter your comment. Wiki syntax is allowed:
 
  • ms_windows_ms_sql/windows_2012r2_domain_controller_repair_from_page_fault_in_nonpaged_area.txt
  • Last modified: 2019/02/11 09:13
  • by 127.0.0.1