GRUB2 загружает Windows из рекавери вместо основного раздела

Я совсем новичок в Ubuntu, и у меня есть проблема. У меня Acer Aspire E5-573-P5AB, и у меня сначала была установлена ​​Windows 10. Затем я установил Ubuntu 16.04 или 16.10 LTS. Я не могу вспомнить, какой из них.

С тех пор как я обновил Ubuntu до 17.10, Grub решил попробовать загрузить Windows 10 из /dev/sda1, который является разделом восстановления Windows 10 вместо /dev/sda2, который является основным разделом Windows 10, и когда я пытаюсь загрузиться в Windows 10 Я вижу цвет фона grub и несколько блестящих линий на экране, а затем ноутбук перезагружается в grub.

Чтобы загрузить Windows 10 из grub, я должен выделить Windows 10 на экране загрузки Grub и отредактировать команду, чтобы изменить hd0,msdos1 на hd0,msdos2. Это очень раздражает!

Также обратите внимание, что я использовал sudo update-grub несколько раз, и он все еще обнаруживает Windows 10 на /dev/sda1 вместо /dev/sda2. Кто-нибудь может мне помочь? Я новичок и не знаю что делать! Также обратите внимание, что обе ОС установлены в BIOS, а не в UEFI.

Вот мой пастин из Boot Repair

0
задан 4 December 2017 в 21:14

1 ответ

Существует ряд инструментов, которые вы можете попробовать использовать. Boot Repair является одним. Grub Customizer - еще один инструмент, который приходит на ум. Однако, так как update-grub не работает так, как объявлено, похоже, что с флагами вашего раздела на /dev/sda2 что-то не так, поскольку вышеупомянутый скрипт должен генерировать пункты меню для всех загрузочных разделов независимо от ОС или их версии. Хотя это обычно не рекомендуется, вы можете вручную отредактировать /boot/grub/grub.cfg

Найти пункт меню, который вы редактировали во время загрузки, чтобы изменить hd0, msdos1 на hd0, msdos2, поскольку вы говорите, что это работает. Вы можете найти конкретную строку, чтобы можно было распознать блок, который вы будете редактировать, с помощью cat /boot/grub/grub.cfg | grep -A11 /dev/sda1 изменить каждую ссылку в этом блоке между фигурными скобками с hd0,msdos1 на hd0, msdos2, их должно быть 3. возможно, вам удастся просто изменить set root = part. Вы также можете изменить ссылку на заголовок пункта меню, где указано on /dev/sda1 на on /dev/sda2, чтобы избежать путаницы в дальнейшем.

Проблема с вышеуказанным подходом заключается в том, что при следующем обновлении grub он, скорее всего, вернется к тому же поведению, которое вы наблюдаете сейчас. Похоже, основная причина в том, что что-то не так с скриптами конфигурации grub или os-prober. команда sudo apt install --reinstall grub-common должна разрешить это и привести к тому, что update-grub будет работать, как объявлено.

0
ответ дан 4 December 2017 в 21:14

Другие вопросы по тегам:

Похожие вопросы: