Восстановление пункта «Устранение неполадок компьютера» в меню дополнительных вариантов загрузки Windows 7

Технический уровень : Экспертный

Краткое содержание
Обычно, чтобы загрузиться в среду восстановления с жесткого диска, необходимо после включения компьютера нажать функциональную клавишу F8 и в открывшемся меню выбрать пункт «Устранение неполадок компьютера».

Рисунок  1 – вход в среду восстановления из меню дополнительных вариантов загрузки

Однако вследствие различных факторов, например, после операции восстановления запуска, этот пункт из меню дополнительных вариантов может исчезнуть.

Рисунок 2 – Отсутствие пункта "Устранение неполадок компьютера"


Подробности
Каким образом происходит загрузка в среду восстановления?

Во-первых, на системном разделе должны находиться файлы самой среды восстановления (вместо буквенно-цифрового кода, вида XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX, я буду использовать его условное обозначение RE_GUID):

  • Файл, содержащий саму среду восстановления "C:\Recovery\RE_GUID\winre.wim";
  • Файл, обеспечивающий создание RAM-диска, на котором среда восстановления разворачивается "C:\Recovery\RE_GUID\boot.sdi"

Во-вторых, хранилище загрузки (BCD) должно содержать запись загрузки в среду восстановления со всеми необходимыми атрибутами и запись параметров RAM-диска.

В-третьих, запись должна быть активирована.

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

Анализ BCD.

Как я говорил выше, для успешной загрузки в среду восстановления BCD должно содержать запись о ней. Загрузка Windows RE, как и загрузка самой операционной системы, относятся к одному типу, поэтому их параметры аналогичны. В этом вы можете убедиться, выполнив в командной строке команду:

bcdedit /enum osloader

Особенностью является то, что Windows RE разворачивается на RAM-диске (в официальной компьютерной терминологии – электронный диск). Чтобы увидеть запись загрузки в среду восстановления и параметры RAM-диска, нужно отобразить все параметры BCD. Для этого запустите командную строку и выполните:

bcdedit /enum all

Рисунок 3 – параметры записи загрузки Windows RE и ее электронного диска в BCD

На рисунке 3 показана запись загрузки в среду восстановления (обозначена цифрой 1) и параметры ее RAM-диска. Обратите внимание, что в параметрах device и osdevice присутствует ссылка на идентификатор электронного диска (обозначен цифрой 3). Это очень важно, так как при неправильно указанных значениях вы не сможете загрузиться в среду Windows RE с жесткого диска. Также отличает эту запись наличие параметра “winpe” (на рисунке 3 обозначен цифрой 5). Его значение – “yes”.

Активация среды восстановления. 

Для этого воспользуемся утилитой командной строки REAgentC.exeВ командной строке операционной системы, запущенной с правами администратора, необходимо выполнить две команды:

REAgentC.exe /disable
REAgentC.exe /enable

Первая команда отключает любую активную среду Windows RE, сопоставленную с работающей системой Windows 7. Ее необходимо выполнить для сброса ранее сохраненных настроек. Вторая, выполняемая без дополнительных параметров, включает среду Windows RE, находящуюся в каталоге Recovery в корне системного раздела.

Для получения расширенной конфигурации среды восстановления, выполните команду:

REAgentC.exe /info

И станет очевидно, что утилита обнаружит файл Winre.wim в каталоге \\?\GLOBALROOT\device\harddisk0\partition2\Recovery\RE_GUID, что соответствует месту его фактического расположения.

Рисунок 4 – результат выполнения команды REAgentC /info

REAgentC.exe и BCD.

Рассмотрим, какие изменения происходят в BCD при применении утилиты REAgentC.exe. На рисунке 5 представлена часть содержимого BCD после восстановления загрузочной записи операционной системы с помощью команды:

Bootrec /rebuildbcd

выполненной в среде восстановления при загрузке с диска восстановления Windows 7

Рисунок 5 – запись загрузки операционной системы после восстановления 

После применения утилиты REAgentC.exe появились значительные изменения:

Рисунок 6 – изменения в BCD после применения утилиты REAgentC

  • В записи загрузки операционной системы появились параметры recoverysequence со значением, равным имени каталога расположения файла Winre.wim (на рисунке 6 обозначен цифрами 1 и 5), и recoveryenable co значением yes (обозначен цифрой 2);
  • Блок записи загрузки в среду восстановления (обозначен цифрой 3). Обратите внимание, что значения идентификатора записи загрузки в Windows RE и параметра recoverysequence равны;
  • Блок записи параметров RAM-диска (обозначен цифрой 6). Заслуживает внимания равенство значения идентификатора, обозначенного цифрой 4, и дополнительного параметра загрузки в значении параметров device и osdevice в блоке записи загрузки в Windows RE.
Осталось только перезагрузить компьютер и проверить наличие пункта «Устранение неполадок компьютера» в меню дополнительных вариантов загрузки.

Подводные камни.

Применение утилиты REAgentC.exe значительно облегчает процесс восстановления утерянной возможности загрузки в среду восстановления. Однако есть небольшое неудобство. Если такая запись в BCD уже существует, то утилита пропишет еще одну запись со всеми необходимыми атрибутами (в том числе и параметрами RAM-диска). Соответственно добавленные записи будут отличаться от существующих записей, лишь одной цифрой в RE_GUID, а вот путаница в BCD будет большая.

Способы разрешения:

Первый: перед применением утилиты REAgentC.exe, удалите имеющиеся записи, касающиеся загрузки в среду Windows RE – саму запись (ее идентификатор обозначен цифрой 1 на рисунке 5 –WinRE_GUID) и параметры RAM-диска (его идентификатор обозначен цифрой 4 на рисунке 5 –WinRE_RAMDISK_GUID):

Bcdedit /delete {WinRE_GUID}
Bcdedit /delete {WinRE_RAMDISK_GUID}

Второй: отказаться от автоматического добавления записей загрузки операционной системы и загрузки в среду восстановления

и вручную выполнить сначала восстановление загрузки операционной системы с помощью утилит Bootrec или BCDboot, а затем, загрузившись в операционную систему, выполните загрузку в среду восстановления Windows RE.


Заключение.

Если на компьютере установлено несколько систем Windows 7, описанную выше процедуру восстановления нужно провести в каждой из операционных систем, так как среда восстановления «привязывается» к конкретной системе.

Автор статьи - Аркадий Пилипенко, MVP Windows Expert: IT Pro

Первая публикация статьи, 17 мая 2011 года

Microsoft Community благодарит автора, любезно согласившегося на то, чтобы статья была и далее опубликована в нашем сообществе.


См. Также
 

Сведения о статье форума


Последнее обновление 19 мая, 2019 Просмотры 17 689 Относится к:

Доходчиво и действенно.

После пересоздания BCD: bcdboot c:\windows /l ru-ru

"потерялась" среда восстановления - почти все опции "Дополнительные параметры".

Данная статья помогла:

REAgentC.exe /disable
REAgentC.exe /enable

Win8.1 GPT/UEFI

Уважаемый Evgeny E.

А не хотите добавить автора статьи?

Негоже эксперту от Микрософт (я правильно понял вашу табличку?) сдирать один к одному материалы без указания первоисточника, выдавая таким образом за микрософтовы наработки.

Даже если у первоисточника не написано, что его упоминание обязательно (кстати, это MS MVP, не являющийся, о чём будучи MVP с 2000 по 2014 годы знаю не понаслышке, сотрудником MS).

Здравствуйте,

Приносим прощения за подобную неприятную ситуацию. Статья отредактирована. Спасибо, что согласны, чтобы она и далее была опубликована!