Восстановить опцию загрузки Windows 10 в загрузчике Grub

Вопрос или проблема

Я уже довольно долго использую Windows 10 и Ubuntu 16.04 рядом друг с другом. Я мог загружаться в любую из ОС с помощью загрузчика Grub. К сожалению, установка Windows 10 вышла из строя, и мне пришлось переустановить ее.

После переустановки Windows 10 я больше не мог загрузиться в нее с помощью загрузчика Grub. Поэтому я воспользовался своим загрузочным USB с Windows, чтобы выполнить следующие команды для восстановления доступа к Windows:

bootrec.exe /fixmbr
bootrec.exe /fixboot  
bootrec.exe /rebuildbcd 

После этого я использовал easyBCD, чтобы создать новое меню загрузчика для Windows 10 и Ubuntu. Это немного исправило ситуацию. Теперь мне нужно использовать меню загрузки Windows 10, чтобы выбрать либо Windows 10, либо Ubuntu; если я выбираю Windows 10, меня сразу заводит в ОС. Однако если я выбираю Ubuntu, то попадаю к загрузчику Grub с нерабочей ссылкой(?) на мою старую(?) Windows 10. Выбор Ubuntu загружает меня в ОС Ubuntu.

Что бы я хотел достичь, так это вернуть все под загрузчик Grub, но я очень запутался в происходящем, поэтому надеюсь, кто-то сможет мне помочь.

Вот мои текущие разделы: введите описание изображения здесь

Редактировать: Похоже, что Grub Customizer удаляет /etc/grub.d/40_custom, когда я пытаюсь сохранить изменения в Grub Customizer. Когда я добавляю эти строки в оригинальный файл и сохраняю их там, параметр загрузки не отображается в Grub Customizer.

Попробуйте такое решение

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

/etc/grub.d/

gedit 40_custom

Добавьте следующие строки в файл 40_custom:

menuentry "Windows 10" {
  set root="(hd0,1)"
  chainloader +1
}

Если это не сработает, попробуйте следующее:

menuentry "Windows 10" {
      set root="(hd0,msdos1)"
      chainloader +1
    }

После редактирования сохраните файл и выполните следующую команду:

grub2-mkconfig -o /boot/grub2/grub.cfg 

Это добавит запись Windows в основной конфигурационный файл.

Затем введите:

reboot

Попробуйте os-prober. Поскольку у вас установлен другой загрузчик, вам также придется переустановить GRUB. Выполните следующие команды, чтобы установить os-prober и обновить конфигурацию GRUB:

sudo apt-get update
sudo apt-get install os-prober
sudo grub-install /dev/sda
sudo update-grub

Теперь перезагрузите, и ваше меню GRUB должно быть исправлено!

Похоже, что grub успешно находит загрузчик Windows EFI, но затем останавливается на добавлении одной загрузочной записи, которая, однако, ссылается на недействительную (старую) установку Windows.

Можете ли вы выяснить, в каком режиме, т.е. UEFI или Legacy, теперь работает менеджер загрузки Windows? Поскольку grub мог обнаружить и использовать (старое) EFI изображение, а не искать дальше другую альтернативу Legacy.

P.S. Учитывая, что вы хотите загружать любую ОС из любого менеджера загрузки, более справедливым способом будет использование стороннего менеджера загрузки. rEFInd – хороший выбор. Он стабилен и достаточно мощен, чтобы справляться с потенциальными изменениями из-за обновлений системы с любой стороны.

Ответ или решение

Восстановление загрузочного пункта Windows 10 в загрузчике Grub

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

Шаг 1: Определение режима загрузки

Первое, что вам нужно сделать — определить, в каком режиме работает ваше устройство: UEFI или Legacy. Это важно, так как Grub и Windows управляют загрузкой по-разному в каждом из режимов. Для этого выполните следующие действия:

  1. Загрузитесь в Ubuntu.
  2. Откройте терминал и выполните команду:
    ls /sys/firmware/efi

    Если каталог существует и не пустой, значит, вы используете UEFI. Если каталог не существует, вероятно, у вас Legacy.

Шаг 2: Установка os-prober и обновление Grub

Для начала установите os-prober, чтобы Grub мог обнаружить загрузчик Windows:

  1. Обновите список пакетов:
    sudo apt-get update
  2. Установите os-prober:
    sudo apt-get install os-prober
  3. Теперь перезапустите установку Grub:
    sudo grub-install /dev/sda

    Обратите внимание, что sda — это основной диск (измените на ваш диск, если необходимо).

  4. И, наконец, обновите конфигурацию Grub:
    sudo update-grub

Шаг 3: Добавление Windows 10 вручную в Grub

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

  1. Откройте файл 40_custom для редактирования:
    sudo gedit /etc/grub.d/40_custom
  2. В конце файла добавьте следующие строки для Windows 10:

    В режиме UEFI:

    menuentry "Windows 10" {
       set root='hd0,gpt1'  # Измените номер по необходимости
       chainloader /EFI/Microsoft/Boot/bootmgfw.efi
    }

    В режиме Legacy:

    menuentry "Windows 10" {
       set root=(hd0,msdos1)  # Для Legacy систем
       chainloader +1
    }
  3. Сохраните файл и закройте текстовый редактор.

Шаг 4: Обновление конфигурации Grub

После добавления записей в 40_custom, обновите конфигурацию Grub:

sudo update-grub

Шаг 5: Перезагрузка

Теперь перезагрузите вашу систему:

sudo reboot

При запуске вашей системы в меню Grub должен появиться пункт для Windows 10, где вы сможете выбрать, какую ОС хотите загрузить.

Дополнительные советы

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

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

Оцените материал
Добавить комментарий

Капча загружается...