Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✔️ Виртуальные машины Windows
В этой статье приведены действия по устранению проблем, при которых диспетчер загрузки Windows предотвращает загрузку виртуальной машины Azure.
Симптом
Виртуальная машина зависает в ожидании запроса пользователя и не загружается, если не указано вручную.
При использовании диагностика загрузки для просмотра снимка экрана виртуальной машины вы увидите, что на снимках экрана отображается диспетчер загрузки Windows с сообщением "Выбор операционной системы для запуска" или нажмите клавишу TAB, чтобы выбрать средство:.
Причина
Ошибка возникает из-за флага BCD displaybootmenu в диспетчере загрузки Windows. Если флаг включен, диспетчер загрузки Windows предложит пользователю во время загрузки выбрать загрузчик, который он хочет запустить, что приводит к задержке загрузки. В Azure эта функция может увеличить время загрузки ВМ.
Решение
Совет
Если у вас есть последняя резервная копия виртуальной машины, попробуйте восстановить виртуальную машину из резервной копии , чтобы устранить проблему загрузки.
Общие сведения о процессе.
- Настройте для ускорения загрузки с помощью последовательной консоли.
- Создайте виртуальную машину восстановления и получите к ней доступ.
- Настройте для ускорения загрузки на виртуальной машине восстановления.
- Рекомендуется. Прежде чем перестроить виртуальную машину, включите последовательную консоль и коллекцию дампов памяти.
- Перестройте виртуальную машину.
Настройка для ускорения загрузки с помощью последовательной консоли
Если у вас есть доступ к последовательной консоли, существует два способа ускорить загрузку. Уменьшите время ожидания displaybootmenu или удалите флаг полностью.
Следуйте указаниям по доступу к последовательной консоли Azure для Windows , чтобы получить доступ к текстовой консоли.
Примечание.
Если вы не можете получить доступ к последовательной консоли, перейдите к созданию и доступу к виртуальной машине восстановления.
Вариант A. Сокращение времени ожидания
a. Время ожидания устанавливается в 30 секунд по умолчанию, но может быть изменено на более быстрое время (например, 5 секунд).
b. Чтобы настроить значение времени ожидания, используйте следующую команду в последовательной консоли:
bcdedit /set {bootmgr} timeout 5
Вариант B. Удаление флага BCD
a. Чтобы предотвратить отображение командной строки меню загрузки, введите следующую команду:
bcdedit /deletevalue {bootmgr} displaybootmenu
Примечание.
Если вы не смогли использовать последовательную консоль для настройки более быстрого времени загрузки в описанных выше шагах, можно продолжить следующие действия. Теперь вы будете устранять неполадки в автономном режиме, чтобы устранить эту проблему.
Создание виртуальной машины для восстановления и вход на нее
- Выполните шаги 1–3 списка команд для восстановления виртуальной машины, чтобы подготовить виртуальную машину для восстановления.
- Подключение к удаленному рабочему столу используйте подключение к виртуальной машине восстановления.
Настройка для ускорения загрузки на виртуальной машине восстановления
Откройте командную строку с повышенными привилегиями.
Введите следующее, чтобы включить DisplayBootMenu:
Используйте эту команду для виртуальных машин поколения 1:
bcdedit /store <VOLUME LETTER WHERE THE BCD FOLDER IS>:\boot\bcd /set {bootmgr} displaybootmenu yes
Используйте эту команду для виртуальных машин поколения 2:
bcdedit /store <VOLUME LETTER OF EFI SYSTEM PARTITION>:EFI\Microsoft\boot\bcd /set {bootmgr} displaybootmenu yes
Замените любое больше или меньше символов, а также текст внутри них, например "< текст здесь >".
Измените значение времени ожидания на 5 секунд:
Используйте эту команду для виртуальных машин поколения 1:
bcdedit /store <VOLUME LETTER WHERE THE BCD FOLDER IS>:\boot\bcd /set {bootmgr} timeout 5
Используйте эту команду для виртуальных машин поколения 2:
bcdedit /store <VOLUME LETTER OF EFI SYSTEM PARTITION>:EFI\Microsoft\boot\bcd /set {bootmgr} timeout 5
Замените любое больше или меньше символов, а также текст внутри них, например "< текст здесь >".
Рекомендуется. Прежде чем перестроить виртуальную машину, включите последовательную консоль и коллекцию дампов памяти
Чтобы включить сбор дампа памяти и последовательную консоль, выполните следующие действия.
Откройте сеанс командной строки с повышенными привилегиями от имени администратора.
Выполните следующие команды BCDEdit с помощью параметров /ems и /emssettings :
Включите последовательную консоль:
bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /ems {<boot-loader-identifier>} ON bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200
Убедитесь, что размер свободного места на диске ОС превышает объем памяти (ОЗУ) этой виртуальной машины.
Если на диске ОС недостаточно места, измените расположение, в котором создается файл дампа памяти, и обратитесь к нему на любой диск данных, подключенный к виртуальной машине с достаточным объемом свободного места. Чтобы изменить расположение, замените
%SystemRoot%
букву диска данных, напримерF:
в следующих командах.Чтобы включить файл дампа ОС, выполните следующие команды загрузки, добавьте и выгрузите команды для реализации предлагаемой конфигурации с помощью средства reg :
Загрузите hive реестра с сломанного диска ОС:
reg load HKLM\<broken-system> <volume-letter-of-broken-os-disk>:\windows\system32\config\SYSTEM
Включите сбор для ControlSet001.
reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
Включите сбор для ControlSet002.
reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
Выгрузите сломанный диск ОС:
reg unload HKLM\<broken-system>
Перестроение исходной виртуальной машины
Чтобы заново собрать виртуальную машину, выполните шаг 5 из списка команд для восстановления ВМ.
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.