Я установил Fedora на свой компьютер с /
разделом, swap
разделом и ESP
разделом для загрузки EFI.
Теперь я устанавливал ОС Elementary вместо Fedora.
- Я отформатировал
/
раздел (/ dev / sda3) - Отформатировал раздел подкачки (/ dev / sda4)
- Но не форматировал загрузочный раздел EFI (/ dev / sda1)
Теперь, когда я загружаюсь, я получаю свое старое меню grub, которое было установлено Fedora. Я могу загрузиться только в Elementary OS:
- Вход в меню загрузки.
- Выбор загрузки из файла EFI
- Перейдите
/dev/sda1/
, чтобы получитьelementary
каталог, содержащийgrubx64.efi
файл. Который есть/boot/efi/EFI/elementary/grubx64.efi
.
Как я могу это исправить? Я думал о форматировании загрузочного раздела /dev/sda1/
с fat16
чем-то, а затем переустановил grub на него.
Мой /dev/sda1
сейчас содержит это:
root@rafael:/home/rafael# ls /boot/efi/
EFI mach_kernel System
root@rafael:/home/rafael# ls /boot/efi/EFI/
BOOT/ elementary/ fedora/
root@rafael:/home/rafael# ls /boot/efi/EFI/fedora/
BOOT.CSV fonts gcdx64.efi grub.cfg grubx64.efi MokManager.efi shim.efi shim-fedora.efi
root@rafael:/home/rafael# ls /boot/efi/EFI/elementary/
grubx64.efi
Вот мой efibootmgr
вывод:
BootCurrent: 003D
Timeout: 0 seconds
BootOrder: 2001,2002,2003
Boot0000* Notebook Hard Drive
Boot0010* Internal CD/DVD ROM Drive
Boot0011* Internal CD/DVD ROM Drive (UEFI)
Boot0012* Fedora
Boot0013* Fedora
Boot0014* Fedora
Boot0015* Fedora
Boot0016* Fedora
Boot0017* Fedora
Boot0018* Fedora
Boot0019* Fedora
Boot001A* Fedora
Boot001B* Fedora
Boot001C* Fedora
Boot001D* Fedora
Boot001E* Fedora
Boot001F* elementary
Boot2001* USB Drive (UEFI)
Boot2002* Internal CD/DVD ROM Drive (UEFI)
Любая помощь будет оценена.
efibootmgr
вывод, чтобы было видно, есть ли запись элементарного элемента (кажется, что нет, но чтобы быть уверенным). Вам также может понравиться refind в качестве менеджера загрузки. На всякий случай, если вы хотите быстро взглянуть на E17 в этой системе, есть изображение, которое просто работает (490M ISO), а также еженедельные снимки . Вероятно, уступает в отношении E polisefibootmgr
вывод.Ответы:
Я не знаю, почему вы используете Grub в первую очередь. UEFI действует как загрузчик и позволяет выбирать различные операционные системы или отдельные ядра из меню загрузки. Хотя есть некоторые исключения, обычно нет необходимости связывать второй загрузчик, в данном случае, grub.
Вы упоминаете, что вы установили элементарную ОС вместо Fedora, что означает, что вам нужно загрузить только одну операционную систему. Здесь я представляю способ сделать это без использования Grub. Ядро должно быть скомпилировано с EFI_STUB, если это так, вы можете проверить с помощью
Скопируйте ядро и initramfs в ESP (системный раздел EFI)
Зарегистрировать ядро в качестве опции загрузки в UEFI
--disk
Аргумент принимает имя устройства диска, например--disk /dev/sda
, то--part
аргумент принимает номер раздела ЭСПА, например , 4. Вы можете найти номер раздела ESP с помощью следующей команды:Убедитесь, что вы повторяете шаги после каждого обновления ядра
Либо вы делаете это вручную (просто повторите шаги, описанные выше), либо вы пишете небольшой скрипт, который выполняет эту работу. Чтобы полностью автоматизировать его, сценарий можно подключить к процедуре постустановки ядра, процедуре пост-обновления initramfs и процедуре ядра postrm (чтобы удалить загрузочную запись UEFI). На самом деле, я не знаю, почему это не делается по умолчанию в дистрибутивах, это всего лишь несколько строк кода.
источник
grep EFI_STUB /boot/config-3.2.0-49-generic
но ничего не получил.Я это сделал !
Прежде всего, я удалил все ненужные загрузочные записи:
Затем переформатирование раздела ESP с
FAT32
файловой системой.Затем установил личинку для
/dev/sda
НЕ/dev/sda1
источник