
Итак, в прошлом году я купил ноутбук HP Pavilion G6 с предустановленной Windows 8 и успешно установил на него Ubuntu 13.04. Но каждый раз при загрузке мне приходилось нажимать F9, чтобы войти в параметры BIOS, а затем оттуда я мог выбирать между менеджером загрузки ОС и Ubuntu [я не мог заставить grub взять на себя управление загрузчиком Windows].
Недавно я думал об установке Ubuntu 14.04. Но в конечном итоге я хочу, чтобы Grub взял на себя управление загрузчиком Windows 8, и мне не приходилось бы нажимать F9 каждый раз, когда мне нужно загрузить Ubuntu.
У меня включен UEFI и отключена безопасная загрузка. Используя менеджер разделов EaseUS в Windows, я исследовал ESP [EFI System Patition].
Я обнаружил следующее:
1. Раздел имеет 2 папки - BOOT и EFI.
2.BOOT имеет только 1 файл - BOOT.SDI
3.EFI имеет 4 папки - Microsoft, Boot, HP и Ubuntu
4. В папке Boot здесь есть только один файл - bootx64.efi, который при поиске содержимого в других папках, как я обнаружил, имеет то же имя файла, что и файл, содержащийся в ./HP/EFI/Boot/
5. Папка HP имеет 5 подпапок - SystemDiags, BIOSUpdate, BIOS, BOOT, EFI. Папка EFI здесь имеет 2 подпапки - Boot и Microsoft, и это загрузочная папка, которая содержит BOOTX64.EFI.
Итак, мой вопрос в том, после того как я переустановил Ubuntu на отдельный раздел, будет ли работать метод, приведенный здесь:Windows 8 удаляет Grub из списка менеджеров загрузки по умолчанию, все еще работает и позволяет мне выбирать между Ubuntu и Windows при запуске с помощью grub? Потому что я помню, что в последний раз, когда я пытался использовать его, это не сработало ..
Также, из любопытства, если я каким-то образом удалю папку HP из раздела ESP, то не будет ли это то же самое, что иметь ноутбук с установленной ОС DOS, на котором теперь нет никаких остатков HP?
И еще один вопрос, может ли кто-нибудь объяснить мне, почему Windows загружается по умолчанию, а Grub в Ubuntu не запускается?
решение1
Если вы пробовали использовать bcdedit
в Windows, как описано вWindows 8 удаляет Grub из списка менеджеров загрузки по умолчаниювопрос, который вы процитировали, и если это не работает, то это не будет работать лучше с Ubuntu 14.04, чем с 13.04. По сути, то, что вы видите сейчас, это глючная прошивка. Вы можете проверить в HP, исправили ли они эту ошибку в обновлении прошивки. (Они, вероятно, называют это "BIOS", но на самом деле это не BIOS; это EFI.)
Если у HP нет обновленной прошивки, то, учитывая, что ваш компьютер слишком старый, чтобы вернуть его в магазин для возврата денег, ваш единственный выбор — найти обходной путь. Один из вариантов, который, скорее всего, сработает, — это переименовать EFI/Microsoft/Boot/bootmgfw.efi
во что-то другое и переименовать выбранный вами менеджер загрузки, чтобы использовать это имя. Вы можете использовать тег Advanced options вРемонт багажникачтобы сделать это автоматически, или вы можете сделать это вручную. В качестве альтернативы, если вы переключитесь напересмотретькак менеджер загрузки, вы можете использовать его mvrefind.sh
скрипт для выполнения работы, как описаноздесь.Обратите внимание, что такая операция переименования — очень хакерский обходной путь для ошибки, которая никогда не должна была увидеть свет. «Исправление» может на самом деле вызвать дальнейшие проблемы в дальнейшем, или оно может быть отменено Windows, если она заметит, что ее загрузчик был перезаписан. Я настоятельно рекомендую вам сделать резервную копию вашего ESP, если вы это сделаете, чтобы вы могли восстановить его до заведомо рабочего состояния, если что-то плохое случится в дальнейшем. Резервной копии на уровне файлов (с использованием tar
, cp
или чего-то еще) должно быть достаточно.