Последняя удачная конфигурация – это хранящиеся в реестре настройки системы, служб и драйверов, с которыми Windows успешно загрузилась в последний раз. Я предлагаю вам разобраться вместе со мной, как работает этот механизм восстановления, и в каких случаях он помогает.
Чтобы не перегружать рассказ длинным словосочетанием «последняя удачная конфигурация», я буду иногда использовать аббревиатуру ПУК LKGC (Last Known Good Configuration). В комментариях к делу о восстановлении реестра один из читателей заметил, что LKGC ему ни разу не помогала. Возможно, он лечил насморк бромгексином, ибо эффективность лекарства зависит от того, подходит ли оно для конкретной болезни.
[+] Сегодня в программе
- В каких случаях последняя удачная конфигурация может помочь
- Ключевые параметры для загрузки системы и их восстановление
- Как Windows определяет последнюю удачную конфигурацию
- В какой момент сохраняется последняя удачная конфигурация
- Как вернуть возможность загрузки в последнюю удачную конфигурацию в Windows 8
- Дискуссия и опрос
В каких случаях последняя удачная конфигурация может помочь
Последняя удачная конфигурация может помочь, если система не загружается или демонстрирует черный экран после:
- установки драйвера (например, черный экран может возникнуть после установки драйвера видеокарты)
- добавления нового устройства, что также сопряжено с установкой драйвера
- изменения в конфигурации служб
- ручной правки разделов реестра, о которых пойдет речь ниже в статье
Однако последняя удачная конфигурация не может помочь, если проблема при загрузке системы связана с:
- неисправным устройством
- повреждением системных файлов (это лечится с помощью DISM и SFC)
- нарушением прав на файлы
- повреждением профиля конкретного пользователя
Кроме того, LKGC не поможет, если проблема возникла более одной загрузки назад, т.е. до того, как был создан контрольный набор последней удачной конфигурации.
Ключевые параметры для загрузки системы и их восстановление
Настройки системы, необходимые для успешной загрузки, хранятся в разделе реестра
HKLM\System\CurrentControlSet\
Здесь главную роль играют подразделы:
- Control — параметры системы
- Services — параметры драйверов и служб
Изменения в этих разделах могут нарушить работу системы так, что она перестанет загружаться или отображать информацию на экране.
В Windows 7 предусмотрен механизм возврата к последней удачной конфигурации из меню дополнительных вариантов загрузки системы. Чтобы попасть в него, нужно нажать клавишу F8 до начала запуска Windows 7 (о Windows 8 речь пойдет в конце статьи).
Windows автоматически осуществляет загрузку в LKGC, так что от вас не требуется никаких действий с реестром. Давайте посмотрим, какую работу выполняет при этом Windows.
Как Windows определяет последнюю удачную конфигурацию
Система хранит как минимум два контрольных набора параметров. Один из них, загрузка в который выполнена в данный момент, помечается как текущий и стандартный. Еще один набор считается резервным и применяется для загрузки в последнюю удачную конфигурацию.
Настройки хранятся в разделе HKEY_LOCAL_MACHINE\System:
- CurrentControlSet – текущий набор параметров, с которыми загрузилась Windows. На самом деле этот раздел виртуальный. В зависимости от ситуации, в нем отображаются параметры одного из нумерованных наборов ControlSet00N.
- ControlSet001, ControlSet002 и т.д. – наборы параметров, работоспособность которых может варьироваться, как вы увидите ниже.
Картина до загрузки в LKGC
На рисунке ниже показана система, которая еще не загружалась в LKGC. Здесь масса информации, которую я постараюсь изложить как можно более доступно.
Настройки, с которыми Windows успешно загрузилась в последний раз, определяются на основе данных раздела
HKEY_LOCAL_MACHINE\SYSTEM\Select
Здесь вы видите четыре параметра реестра. Их значения указывают Windows, в какой набор настроек системы, служб и драйверов загружаться.
- Current – текущий набор настроек, с которыми загрузилась Windows. Значение параметра равно 1, что указывает на раздел реестра ControlSet001. Это означает, что в настоящий момент настройки из этого раздела отображаются в разделе CurrentControlSet (т.е. любые изменения в нем на самом деле вносятся в ControlSet001 – проверьте!).
- Default – набор настроек, с которым Windows загружается по умолчанию. Значение этого параметра также равно 1. Это означает, что Windows использует для загрузки набор ControlSet001.
- Failed – набор настроек, загрузка в который закончилась неудачей. Как только вы загрузитесь в последнюю удачную конфигурацию, использовавшийся для предыдущей загрузки набор будет помечен в качестве неудачного. В данном случае это будет ControlSet001, как вы увидите ниже.
- LastKnownGood – набор настроек, который будет использоваться для загрузки в LKGC. В данном случае значение параметра равно 2, т.е. загрузка будет выполняться с набором ControlSet002.
Давайте загрузимся в последнюю удачную конфигурацию и посмотрим на изменившиеся значения параметров.
Картина после загрузки в LKGC
Как видите, ситуация изменилась, и теперь:
- Current – в качестве текущего набора используется ControlSet002, который ранее был зарезервирован для последней удачной конфигурации
- Default – опять же, ControlSet002 используется в качестве стандартного раздела для загрузки
- Failed – значение параметра равно 1, что указывает на раздел ControlSet001. Ранее он использовался по умолчанию, но как только вы загрузились в LKGC, система стала считать его неудачным.
- LastKnownGood – значение параметра равно 3, что указывает на набор ControlSet003. Он был создан на основе текущего набора ControlSet002, поскольку загрузка в него увенчалась успехом.
Количество разделов CurrentControlSet00n не растет бесконтрольно, поскольку Windows осуществляет их ротацию.
Раздел реестра, в котором хранится последняя удачная конфигурация, обновляется после каждой успешной загрузки. Тем самым поддерживается его актуальность. Дальше я расскажу, как Windows определяет, что загрузка была удачной.
В какой момент сохраняется последняя удачная конфигурация
Для того чтобы загрузка системы считалась удачной, необходимо соблюдение двух условий:
- успешный старт служб, имеющих автоматический тип запуска (я ранее уже разбирал этап загрузки WinLogonInit)
- удачный вход в систему
Во время загрузки системы процесс Winlogon вызывает функцию NotifyBootConfigStatus, которая сообщает статус загрузки диспетчеру управления службами (Service Control Manager, SCM). Получив сообщение и убедившись в успешном старте автоматически запускающихся служб, SCM инициализирует сохранение последней удачной конфигурации.
Если Windows никогда раньше не загружалась в LKGC, система создает новый контрольный набор для удачной конфигурации. Если же загрузка в LKGC выполнялась ранее, этот набор обновляется, принимая во внимание разницу с набором CurrentControlSet.
В отличие от Windows XP, в Windows 7 предусмотрен механизм, позволяющий сторонним службам определять успешность загрузки, отбирая эту задачу у системы. Например, для SQL Server необходимо иметь доступ к транзакциям и обработать их, о чем Winlogon знать не может, конечно.
В этом случае в разделе
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
значение параметра ReportBootOk устанавливается равным 0 (по умолчанию – 1).
При таком раскладке SCM запускает службы, а затем стороннюю программу для определения статуса загрузки системы. Путь к программе должен быть указан в параметре BootVerificationProgram, который создается в разделе HKLM\System\CurrentControlSet\Control. Получив от программы добро, SCM сохраняет последнюю удачную конфигурацию.
Как вернуть возможность загрузки в последнюю удачную конфигурацию в Windows 8
В дополнительных параметрах загрузки Windows 8 уже нет последней удачной конфигурации, и в случае проблем вы не сможете вернуться к ней вручную. Точная причина исчезновения опции мне неизвестна, поэтому могу озвучить лишь свое предположение.
Загрузка ОС на современных ПК с UEFI начинается настолько быстро, что очень трудно вовремя нажать клавишу F8. Поэтому и не реализовали вход в дополнительные параметры нового загрузчика этим способом.
Однако когда система не запускается, в среду восстановления можно загрузиться с внешнего носителя, а оттуда уже перейти в дополнительные параметры. Как следствие, я не совсем понимаю, почему LKGC убрали из меню в Windows 8.
Любопытно, что в Windows Server 2012 и R2 в дополнительных параметрах есть LKGC. Это прозрачно намекает на то, что из клиентской системы сама функция никуда не делась, а лишь пропала из графического интерфейса загрузчика. Постоянные читатели блога сразу вспомнят предыдущие версии файлов и создание образов по расписанию, с которыми в Windows 8 произошла похожая метаморфоза.
При желании функцию LKGC можно включить и в Windows 8, но для этого придется перейти к использованию старого загрузчика, знакомого вам по Windows 7. Для этого достаточно создать пару значений в реестре и выполнить одну команду в консоли. Подробные инструкции есть в сети.
Однако, учитывая специфический круг проблем, которые можно решить загрузкой в LKGC, вряд ли имеет смысл это делать, если только вы не экспериментируете со службами и драйверами каждый день. В конце концов, если система не запускается, можно вернуться к точке восстановления или полностью откатить реестр.
Дискуссия и опрос
Думаю, нет смысла спрашивать, помогала ли LKGC вам, потому что нередко ей пытаются вылечить проблемы, против которых она бессильна. Поэтому я предлагаю развернуть дискуссию немного в другую сторону – как вы боретесь с проблемами, возникающими на ваших и подопечных ПК?
В опросе вы можете выбрать три способа, к которым вы прибегаете чаще всего. В комментариях расскажите, какие способы выбрали и какие лучше всего работают!
Результаты голосования утеряны в связи с прекращением работы веб-сервиса опросов.
Jobs 2013
Стив не одобил бы эту фичу про ПУК ) Лучший вариант решения проблем — периодически бекапить Acronis’ом.
Vadim Sterkin
Как часто вы это делаете? Когда делали последний раз?
Andrey Bayatakov
Зависит от проблемы :) Чаще всего сперва пытаюсь разобраться самостоятельно, если это не удается пользуюсь поиском. Если компьютер чужой, чаще всего прибегаю к переустановке или восстановлению системы из раздела восстановления.
Константин
День добрый!
Не помню, что мне хоть раз помог LKGC. Обычно система бесконечно перегружается при его выборе, либо останавливается на той же ошибке.
Может просто проблемы были серьезные и требовались другие решения.
хэйхэй
Несмотря на то, что дискуссия развернута в другую сторону :), отвечу сначала на первый, хоть и не заданный, вопрос. На стареньком нетбуке сестры с предустановленной Windows XP всякий раз возникала одна и та же проблема: в случае переустановки NIS (периодически на нетбуке сбоит) после перезагрузки вместо выбора системы появлялся синий экран (не BSOD) с непрерывно появляющимися кракозаблями, уходящими скоро в бесконечность. Впервые столкнувшись с таким, сестра в панике использовала как раз LKGC :) и это помогло. Правда, как выяснилось, достаточно было просто нажать не то ALT, не то пробел (это уже мои попытки справиться с ситуацией путем последовательного нажатия всех кнопок на клавиатуре) и система загрузилась бы и так. Что же касается главного вопроса, то самостоятельному решению проблем очень помогает усиленное копание в гуглояндексе :), а если не выходит, почти всегда спасает восстановление системы. Единственный раз оно не сработало при серьезном сбое еще на Windows 7, интернет не работал, а самостоятельные попытки полного профана (меня, то есть) результата не дали, пришлось делать откат системы к заводским настройкам из скрытого раздела. Помогло.
Vadim Sterkin
Я бы даже сказал, снимает задачу самостоятельного решения :)
Дамир
Мой план действий таков:
1. Усиленно разбираться самому. Сюда же входит откат до последней точки восстановления. Резервных копий ещё ни у кого из клиентов не видел. :)
2. Если сам не разобрался, использую гуглинг до посиненинга (собственно, это скорее входит в пункт 1, чем отдельно).
3. Если гуглинг не помог, можно и на форумах поспрашивать, но обычно клиенты не хотят ждать, пока Энторнеты ответят.
4. Если всё вышеизложенное результата не дало, спасаю всё что можно и переустанавливаю систему.
Отдельно ОГРОМЕННЕЙШЕЕ НЕЧЕЛОВЕЧЕСКОЕ СПАСИБО за ссылку на винревью — наконец-то перезагрузка из 8 в 7 не требует двух перезагрузок, если вы понимаете, о чём я. Конечно, я в курсе, что можно из Charms бара выбрать Settings-Power и нажать Shift для выбора другой системы, но мне удобней Win-X, а там этот трюк не работает (что по меньшей мере странно).
Vadim Sterkin
Дамир, а зачем вам связка 7 и 8, как вы ими пользуетесь?
Алексей
Вадим, расскажите пожалуйста о загрузке ОС на современных ПК с UEF — как быстро происходит, как теперь на них вместо БИОС происходит инициализация оборудования.
Vadim Sterkin
Алексей, думаю, это будет еще скучнее, чем LKGC :)
Дамир
Забыл добавить: LKGC помогал пару раз при разгоне демонстраций зловредов на клиентских ПК. Один зелёный восьмилапый антивирус при лечении файловых вирусов, помимо лечения заражённого svchost.exe, заодно убивал все ссылки в реестре на его запуск (и пофиг, что файлик нужен для системных служб). В результате винда становилась калекой. Правда, восстанавливал работоспособность последней удачной конфигурации несколько нестандартным способом — экспортировал здоровую ветку ControlSet00X, менял 00X на 00Y (покоцанная ветка) и импортировал обратно. Как говорится, если секс — то только стоя и в гамаке. :)
Дамир
Vadim Sterkin,
7 — основная, рабочая система со всем необходимым софтом.
8.1 — больше поиграть, пощупать, привыкнуть.
Вроде я об этом писал в комментах к статье про «10 фишек 8.1». Потихоньку переползаю на новую систему, чтобы не было «культурного шока» впоследствии — ибо семёрку уже сейчас хрен купишь, а к моменту, когда встанет вопрос обновления ноута, её тем более не найдёшь. Вот очередной мелкий шаг (загрузка 8.1 по умолчанию) нарвался на неприятность в лице новой «морды» бут менеджера, которая благополучно пофиксилась благодаря ссылке на статью Сергея Ткаченко.
Давно порывался спросить здесь про эту фишку, но боялся получить ответ в стиле «зачем вам 7, у меня нет дуалбута, переходите на модерн». :D
Кстати, переходу очень способствуют «Zombie HQ» и «Крокодильчик Свампи» в первой, а теперь уже и второй ипостаси. :) Правда, одной мышкой сильно не покопаешь, но на безпланшетье и тачпад — рыба. :)
хэйхэй
Ага, только мне не приходилось встречаться с людьми, обладающими врождённой компьютерной грамотностью :), и если уровень собственных знаний плещется где-то около плинтуса, приходится поднимать его всеми допустимыми способами, в том числе и с помощью Вашего блога :)
Андрей
Такая же басня.
Поэтому ответить определённо в опросе не возможно.
Хоть и написал, что сам стараюсь, но без помощи окружающих в интернете не всегда получается.
Вадим, спасибо за ваш комментарий!.
serenitatis
Переустановка это всегда последнее действие, когда уже все безнадежно и дальше никакого смысла воскресить не воскрешаемое нет. До этого максимально стараюсь вытащить систему из ступора. Либо восстановлением тем или иным образом при помощи гуглояндекса, либо, опять же, если разбираться лень, а бэкап недавний, разворачиванием бэкапа Acronis. Последний делает у меня еженедельно в авторежиме. Правда, я давно уже забросил всяческие эксперименты и системы у меня живут по 5 лет и меняются вместе с компьютером в сборе :)
Yura
У меня Акронис раз в неделю (суббота, по расписанию), резервирует раздел (полная одна копия). Не вижу в этом ничего напрягающего, 10 минут и резерв освежился
Vadim Sterkin,
Dr. Puh
Отметил «Другое», т.к. всегда стараюсь выбирать кратчайший метод восстановления дающий 100%-й результат. Время — деньги.
Vadim Sterkin
Чтобы определить кратчайший путь, наверное, надо проделать что-то из перечисленного? :)
Альберт
Когда система не грузится, то я в первую очередь запускаю (последняя удачная конфигурация) Меня она всегда выручала и выручает. Вадим спасибо за подробное описание об этой возможности.
Vadim Sterkin
Альберт, ну, если не знать, что делали с системой, то да — не повредит :)
Сергей
Я чаще всего пользуюсь не последней удачной конфигурацией, а резервными копиями файлов реестра. Это когда винда ругается на повреждённый файл c:\windows\system32\config\software или system. Тогда я гружусь с LiveCD, достаю из ПРЕДпоследней точки копию нужного раздела и заменяю повреждённый. Загрузка последней удачной конфигурации в таком случае помогает очень редко.
Vadim Sterkin
Сергей, из точек достаете? У вас XP, наверное. См. также первую ссылку в статье.
Виталий К. ©
Интересно, а есть ли клиентские службы, использующие этот механизм?
По опросу- выбрал последнее- последние полгода просто не ломаю)) А сама по себе система сломаться не может.
Vadim Sterkin
Виталий, ответа на ваш вопрос я не знаю. Может, и есть, но я не сталкивался.
Евгений
Лично я всегда делаю образ настроенной под себя Windows с помощью Acronis.Если возникает серьёзная проблема, которую не получается решить ни с помощью точки восстановления ни с LKGC, то не нужно снова полдня заниматься установкой и настройкой Windows. Через 5 минут у меня уже стоит настроенная Windows с установленными драйверами. Программы в образ не включаю.
Vadim Sterkin
Евгений, так на установку программ и настройку пользовательской среды и уходит большая часть времени. Чистая ОС и так ставится за 10-15 минут…
Dr. Puh
Vadim Sterkin,
Я это к тому, что правильный вопрос, IMHO, не КАКИЕ способы выбирать (они все хороши), а КАК выбрать правильный (исходя из поставленных целей — быстро и качественно :)
Vadim Sterkin
Это верно, но как это запихать в голосование? :)
Anonymous
Гуглю после первичной диагностики, а если решение не находится — занимаюсь проблемой до победного.
Впрочем, ловить чужие баги дело неблагодарное, так как Microsoft пофигу на багрепорты, пока они не начнут массово сыпаться через WER или не придут от премьер поддержки.
Vadim Sterkin
А между тем, у 13% проголосовавших одним из трех самых популярных способов решения проблем является переустановка ОС (и это читатели данного блога! :) Что же происходит у тех, кто его не читает…
Валерий
Если комп не запускается,то в инете совета не спросишь,а лучшее что посоветуют знакомые-*перебить винду*.-это просто и дешево-потому что сам,или в сервис-что дороже.А в тонкостях настроек разбираться-нужны стойкие знания.Вот и получается,что большинство пользователей насморк лечат гильйотиной.
валерий
Здравствуйте, Вадим!
При входе в Google Chrom выдается сообщение — «Не удалось корректно загрузить ваш профиль. Некоторые функции могут быть недоступны. Убедитесь, что ваш профиль существует и у вас есть разрешение на операции чтения и записи.»
Конечно профиль существует. Что надо сделать, чтобы веб сайт открывался сразу без этого сообщения , а не после трехкратного щелчка на ОК ?
У меня ОС Windows 7
Vadim Sterkin
Валерий, закройте браузер, переименуйте %userprofile%\AppData\Local\Google\Chrome в Chrome_old и запустите браузер. К конфигурации Windows это вообще не имеет отношения.
Виталий К. ©
Смартфона нет?
Павел
Как правило, всегда одна и та же проблема — вирус (один и тот же) не дает антивирусу (Symantec) просканировать комп — пишет «недостаточно места на диске». Запускаю Dr.Web.CureIt — он удаляет вирус и все работает. Запускается Symantec — то же что-то удаляет. Как это победить? Честно не знаю!!! Если поможете — буду признателен. С уважением и благодарностью за Ваш сайт, Павел.
Vadim Sterkin
Павел, вам сюда: Вам нужна помощь? Нам нужны ваши логи! Если их не будет, мы отправим вас в эту тему.
Димтрий
По роду деятельности приходится сталкиваться и с проблемами с загрузкой системы, и, естественно, помогать знакомым\родственникам, вспоминающим, что «есть кому позвонить».
LKGC — первое что проделываю или предлагаю сделать по телефону.
Да, LKGC — не панацея, но в 30-50% проблема решается.
Наборы CurrentControlSet(0-Х) встеречал еще в Windows NT, но можно ли было вызвать в NT выбор Last Known Good Configuration — не помню.
Сергей
Acronis True Image.
На дектопе установил дополнительный физический HDD — старый, но надёжный как АКМ, Hitachi 120GB, который теперь представляет собой одну сплошную «Зону безопасности Акронис». Раз в неделю происходит автоматическое архивирование системного диска. Уже не однажды приходилось восстанавливать систему, Акронис работает надёжно, на всякий случай предусмотрено несколько вариантов загрузки Acronis True Image с различных носителей.
Поймите правильно — нельзя объять необъятное, у меня нет времени особенно вникать в тонкости работы Windows, это работа таких грамотных в этом деле людей, как Вы, Вадим. Нам нужно чтобы компьютер просто надёжно работал и обеспечивал.
Vadim Sterkin
Сергей, может быть, тогда имеет смысл анализировать свои действия, которые приводят к частой переустановке? См. также Как настроить Windows, чтобы переустанавливать ее как можно реже
Сергей
Восстанавливал несколько раз после детского компьютерного творчества. Однажды и по моей вине компьютер перестал нормально работать. Сейчас, слава Богу, и у детей и свои семьи, и свои же персональные компьютеры, и я уже не ставлю на машину что попало, но привычка пользоваться проверенным программным обеспечением у меня осталась.
Михаил
В 98-й было 4 аварийных выхода :) Причем по умолчанию.
В XP — более чем достаточно, если только специально не портить… как в некоторых сборках.
В 7-ке — один. Мало!
LKGC не люблю, потому что она не следует принципу «не навреди». Ей можно пользоваться, если предварительно сделать все копии и битого реестра и резерва, но тогда — зачем она?
Вот сейчас лежит машинка (7Pro), которая без видимых причин наутро не загрузилась.
До меня ткнули «восстановление запуска» — неуспешно. Я ткнул Last good — так же.
В журнале — «поврежден реестр, произведен откат».
Прогнал chkdsk /r — без ошибок. С восстановлением — как обычно…
Смотрю ERD — в реестре мусор — и такой же мусор в regback (4 файла по 262144).
Вот на каком этапе появился мусор в «последнем шансе»? Сильно подозреваю, что именно после Last Good.
Теневое копирование, видимо, тоже было отключено. Во всяком случае других версий не обнаружено.
Между прочим, поскольку названия файлов не меняются, они перезаписываются по-живому и их, естественно, нельзя добыть и всякими там r.saver’ами (это я к тому, что в 98-й копии реестра сохранялись под разными именами, а в XP — в разных каталогах).
Однако должен сказать, что раза три LKGC реально помогла :) Именно на семёрке.
Владимир Симоньянц
Простите за вопрос не в тему, но меня одного напрягает количество процентов в ответах на опрос?
Vadim Sterkin
Над опросом написано, что можно было выбрать 3 варианта.