Код ошибки 0x0000006b windows 7

Windows 7

Описание проблемы

При загрузке, через некоторое время после появления заставки «Windows XP», компьютер сам уходит на перезагрузку.

После отключения автоматической перезагрузки выяснил, что выпадает такой «синий экран смерти»:

PROCESS1_INITIALIZATION_FAILED
STOP: 0x0000006B (0xC0000034, 0x00000002, 0x00000000, 0x00000000)

Указания на конкретный источник сбоя (файл, драйвер) не было. При выборе безопасного режима загрузки симптомы те же.

Нашел рекомендации по теме: «ошибка может быть вызвана наличием несовместимости внутри системы ввода-вывода» и «ошибка может быть связана с проблемами конфигурации диска».

Действия по устранению неисправности

1. Проверка диска

Диск проверил в программе MHDD32 на наличие поврежденных секторов. Несколько таких секторов нашлось и все они были переназначены (исправлены).

Загрузился со спасательного компакт-диска в Windows PE и проверил файловую систему NTFS:

chkdsk c: /f

Было найдено несколько ошибок, все они исправились. Каталоги и файлы были на своих местах и открывались нормально.

Попытка загрузки оказалась неудачной, симптомы те же.

2. Перенос системы на другой диск

Неисправный диск уже довольно старый и, чтобы не иметь проблем с ним в дальнейшем, решил перенести систему на другой диск. Установка заново в данном случае не подошла, т.к. имелось много специфичных программ.

На том же компьютере установлен второй диск, почти пустой, поэтому стал переносить систему на него.

Порядок действий был такой:

  • Загрузился в Windows PE и скопировал все файлы.
  • Выключил компьютер, отключил неисправный диск и поставил новый на его место.
  • Запустил консоль восстановления с установочного диска Windows XP и прописал загрузочные сектора командами fixmbr, fixboot c:.
  • Загрузился в DOS и сделал новый системный раздел активным.

Попытка загрузки оказалась неудачной, симптомы те же. Впрочем, и новых проблем после переноса не появилось.

3. Проверка системных файлов

В одной из статей по теме — STOP 0x0000006B Process1_Initialization_Failed — нашел подсказку:

This error is caused by a missing system file (usually
Ntdll.dll in the %systemRoot%\system32 directory.

Загрузившись в Windows PE убедился, что библиотеки ntdll.dll нет на месте. Скопировал недостающий файл из %SystemRoot%\system32\dllcache.

«Синий экран смерти» больше не появился, загрузка продолжилась нормально, но до конца так и не дошла. Появился голубой экран с небольшим логотипом Windows XP справа. Такое встречал раньше после лечения некоторых вирусов, прописавшихся в реестре для автозагрузки — значит, надо проверять реестр.

4. Проверка Winlogon

Снова загрузившись в Windows PE подключил куст SOFTWARE в ветку SW и проверил настройки Winlogon:

[HKEY_LOCAL_MACHINE\SW\Microsoft\Windows NT\CurrentVersion\Winlogon]
"LogonType"=dword:00000001
"Userinit"="C:\\WINDOWS\\system32\\userinit.exe,"

Файл C:\WINDOWS\system32\userinit.exe оказался на своем месте. По дате, размеру и содержимому совпал с таким же файлом из Windows PE, т.е. файл не подменен каким-нибудь вирусом.

Отключил autologon, чтобы посмотреть, что же происходит при загрузке — исправил реестр в том же месте:

"LogonType"=dword:00000000

Выяснилось, что окно ввода пароля отображается, но сразу после ввода правильного пароля появляется окно «Завершение сеанса».

Поиском по фразе «завершение сеанса сразу после входа» нашел возможную причину — несоответствие буквы системного диска. Проверка: подключил неисправный диск вместе с новым системным, загрузился с нового диска — успешно. Выяснил, какая буква назначена системному диску:

D:\Documents and Settings\Администратор>set windir
windir=D:\WINDOWS

Все верно, этот диск ранее был подключен к компьютеру и разделу была назначена буква D:. Система же «привязана» к диску C:, в частности — указанный в реестре путь к userinit.exe неверен.

5. Изменение буквы системного диска

Статья по этому вопросу нашлась легко: Изменение буквы системного или загрузочного диска в Windows.

В реестре (на новом диске), в разделе [HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices] поменял местами буквы дисков:

  • Переименовал параметр \DosDevices\C: в \DosDevices\C1
  • Переименовал параметр \DosDevices\D: в \DosDevices\C:
  • Переименовал параметр \DosDevices\C1 в \DosDevices\D:

После отключения неисправного диска система на новом диске успешно загрузилась.

Выводы

Восстановление загрузки компьютера иногда занимает много времени, большая часть которого уходит на поиск истинной причины неисправности. Внимательное исследование системы и реестра может показаться напрасным и неблагодарным занятием. Но и любимые многими радикальные варианты восстановления загрузки «переустановить систему» или «накатить сверху» не всегда подходят.