Поделиться через


Устранение неполадок при загрузке ОС виртуальной машины Windows

Область применения: ✔️ Виртуальные машины Windows

В этой статье объясняется, почему виртуальная машина Windows не может загрузиться и как решить проблему.

Симптомы

При извлечении снимка экрана виртуальной машины на снимке экрана показано сообщение о том, что не удалось найти загрузочный раздел:

Boot failure. Reboot and Select proper Boot device or Insert Boot Media in selected Boot device

Снимок экрана: сообщение об ошибке загрузки.

Причины

Эта ошибка возникает по нескольким причинам.

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

Решение

Совет

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

Обзор процесса

  1. Создайте виртуальную машину для восстановления и обратитесь к ней.
  2. Убедитесь, что раздел ОС активен.
  3. Исправьте недостающую ссылку в хранилище BCD.
  4. Перестройте виртуальную машину.

Примечание.

При возникновении такой ошибки гостевая ОС не работает. Для устранения этой проблемы воспользуйтесь автономным режимом.

Создание виртуальной машины для восстановления и вход на нее

  1. Выполните шаги 1–3 списка команд для восстановления виртуальной машины, чтобы подготовить виртуальную машину для восстановления.
  2. Используйте подключение к удаленному рабочему столу, чтобы подключиться к виртуальной машине для восстановления.

Убедитесь, что раздел ОС активен

Примечание.

Это решение применяется только для виртуальных машин поколения 1. Виртуальные машины поколения 2 (с помощью UEFI) не используют активную секцию.

Убедитесь, что раздел ОС, в котором хранится хранилище BCD для диска, помечается как активный.

  1. Откройте командную строку с повышенными привилегиями и откройте средство DISKPART.

    diskpart

  2. Выведите список дисков в системе и найдите добавленные диски и перейдите к выбору нового диска. В этом примере новый диск — диск 1.

    list disk
    sel disk 1
    

    В окне diskpart отображаются выходные данные дисков списка и команд sel 1. Диск 0 и диск 1 отображаются в таблице. Диск 1 — это выбранный диск.

  3. Список всех разделов на диске, а затем перейдите к разделу, который нужно проверить. Обычно управляемые системой секции меньше и размером около 350 МБ. На рисунке ниже этот раздел является разделом 1.

    list partition
    sel partition 1
    

    В окне diskpart отображаются выходные данные секции списка и команды секции sel 1. Раздел 1 — это выбранный диск.

  4. Проверьте состояние секции. В нашем примере раздел 1 не активен.

    detail partition

    Окно diskpart с выходными данными команды секции сведений, в которой раздел 1 не активен.

    Если раздел не активен, установите флаг "Активный", а затем проверьте правильность изменения.

    active
    detail partition
    

    Окно diskpart с выходными данными команды секции сведений, в которой активна секция 1.

  5. Теперь закройте средство DISKPART.

    exit

Исправление отсутствующих ссылок в хранилище BCD

  1. Откройте cmD с повышенными привилегиями и запустите CHKDSK на диске.

    chkdsk <DRIVE LETTER>: /f

  2. Соберите текущие сведения о настройке загрузки и задокументируйте его, запишите идентификатор активной секции.

    1. Для виртуальной машины поколения 1:

      bcdedit /store <drive letter>:\boot\bcd /enum

      1. Если эта команда возникает из-за \boot\bcd отсутствия обнаружения, перейдите к следующему устранению неполадок.

      2. Запишите идентификатор загрузчика Windows. Этот идентификатор имеет путь \windows\system32\winload.efi.

        Снимок экрана: выходные данные виртуальной машины поколения 1, в которой указан номер идентификатора в загрузчике Windows.

    2. Для виртуальной машины поколения 2:

      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /enum

      1. Если эта ошибка возникает из-за \boot\bcd отсутствия обнаружения, перейдите к следующему устранению рисков.

      2. Запишите идентификатор загрузчика Windows. Это один из них с путем \windows\system32\winload.efi.

        Снимок экрана: выходные данные виртуальной машины поколения 2, в которой указан номер идентификатора в загрузчике Windows.

  3. Выполните следующие команды:

    1. Для виртуальной машины поколения 1 :

      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {bootmgr} device partition=<BCD FOLDER - DRIVE LETTER>:
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {bootmgr} integrityservices enable
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} device partition=<WINDOWS FOLDER - DRIVE LETTER>:
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} integrityservices enable
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} recoveryenabled Off
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} osdevice partition=<WINDOWS FOLDER - DRIVE LETTER>:
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} bootstatuspolicy IgnoreAllFailures
      

      Примечание.

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

      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {bootmgr} device boot
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {bootmgr} integrityservices enable
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} device boot
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} integrityservices enable
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} recoveryenabled Off
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} osdevice boot
      bcdedit /store <BCD FOLDER - DRIVE LETTER>:\boot\bcd /set {<IDENTIFIER>} bootstatuspolicy IgnoreAllFailures
      
    2. Для виртуальной машины поколения 2 :

      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {bootmgr} device partition=<Volume Letter of EFI System Partition>:
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {bootmgr} integrityservices enable
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {<IDENTIFIER>} device partition=<WINDOWS FOLDER - DRIVE LETTER>:
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {<IDENTIFIER>} integrityservices enable
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {<IDENTIFIER>} recoveryenabled Off
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {<IDENTIFIER>} osdevice partition=<WINDOWS FOLDER - DRIVE LETTER>:
      bcdedit /store <Volume Letter of EFI System Partition>:EFI\Microsoft\boot\bcd /set {<IDENTIFIER>} bootstatuspolicy IgnoreAllFailures
      

Перестроение виртуальной машины

Чтобы перестроить виртуальную машину, выполните шаг 5 из списка команд для восстановления виртуальной машины.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.