Если вы столкнулись с проблемами при загрузке Windows, первое, что нужно сделать, это попробовать загрузить компьютер в безопасном режиме. Если система загрузится, значит не всё так плохо, скорее всего, ошибка загрузки была вызвана каким-то компонентом, возможно драйвером. Каким или какими? Это можно узнать, проанализировав файл лога ntbtlog.tхt, хранящийся в системной папке %windir%. Когда логирование включено, в процессе загрузки информация обо всех загружаемых Windows драйверах станет сохраняться в лог.
Успешно загруженные драйвера получат статус loaded, те же, которые по какой-то причине не смогли загрузиться, будут иметь статус Not loaded.
Сразу нужно оговориться, что собранная Windows информация имеет к проблеме загрузки лишь опосредованный характер. Незагруженный драйвер вовсе не означает, что именно он и стал причиной сбоя загрузки операционной системы, Windows может пропустить загрузку драйвера, если он не является обязательным для работы системы.
Содержимое лога ntbtlog.tхt позволяет сузить круг поиска причины, а это уже плюс.
Ниже мы рассмотрим, как выявлять потенциально проблемные драйвера в файле лога загрузки, а сейчас давайте посмотрим, как активировать саму функцию журналирования.
В работающей системе включить логгирование загрузки драйверов можно с помощью встроенной утилиты msconfig, отметив на вкладке «Загрузка» пункт Журнал загрузки и сохранив настройки.
Ведение журнала загрузки также может быть включено командой:
bcdedit /set {current} bootlog yes
В запущенной от имени администратора командной строке (параметр no в конце команды отключает журналирование).
Эта же команда используется для активации функции ведения лога загрузки драйверов в нерабочей операционной системе, загруженной из-под установочного диска.
Как читать журнал ntbtlog
Файл лога представляет собой список загруженных (LOADED) и незагруженных (NOT_LOADED) драйверов из каталога SystemRoot\System32\DRIVERS. Однако, как уже было сказано, незагрузившийся драйвер вовсе не означает, что это проблемный драйвер. Как раз напротив, неполадки в работе системы может вызывать как раз загрузившийся, но некорректно функционирующий драйвер, поэтому для выявления источника проблем лучше пойти путем сравнения логов Windows, загруженной в штатном и безопасном режиме.
Если в штатном режиме система работает со сбоями, а в безопасном режиме сбоев не наблюдается, из лога нужно выписать драйвера, которые при обычной загрузке системы получили статус LOADED, а при загрузке в Safe Mode получили статус NOT_LOADED.
Далее по характеру ошибки и имени драйвера стараемся определить, какие именно из загрузившихся драйверов могли стать причиной ошибок и деактивируем их (в безопасном режиме или из-под LiveCD) путем замены расширения SYS или EXE на BAK. Затем загружаем систему в обычном режиме и смотрим на ее поведение. Если Windows грузится без ошибок, проблем в работе системы не возникает, находим путем исключения проблемный драйвер и удаляем его.
Если Windows не загружается в безопасном режиме, например, падает при загрузке в BSOD, сравнивать журнал ntbtlog.tхt нерабочей системы придется с журналом рабочей Windows с другого компьютера, имеющего ту же или как минимум схожую конфигурацию и так же загруженной в безопасном режиме. Но в этом случае дифференциация проводится по другому признаку: драйвера, препятствующие загрузке системы в Safe Mode, в файле ntbtlog.tхt будут отсутствовать, тогда как в загруженной в безопасном режиме рабочей системе они будут иметь статус LOADED.
По большому счету это всё, что касается анализа лога загрузки драйверов ntbtlog. К сожалению, однозначного решения проблемы с загрузкой Windows он не дает, есть лишь намеки, поэтому внимание стоит обращать на всякого рода мелочи, например, строки, указывающие на сбой загрузки одного и того же драйвера (см. выше драйвер dxgkrnl.sys). Может быть и такая картина: нормально загрузившийся драйвер на следующий строке лога уже имеет статус NOT_LOADED, то есть он загрузился и тут же вылетел.
Обращаем также ваше внимание на записи вида NOT_LOADED @cpu.inf,%intelppm.devicedesc%;Intel Processor, в которых присутствует указание на определенное устройство или ПО, в данном примере на интеловские драйвера. Если записей с указанием на драйвер много, стоит подумать об удалении связанного с ним программного обеспечения. Так, пользователи сообщали, что им удавалось восстановить нормальную загрузку Windows путем удаления пакета драйверов SDK for OpenCL, но в таких случаях всегда нужно быть осмотрительным, чтобы не сделать только хуже.
Добавить комментарий