Кратко: запись — это не файл на EFI‑разделе, а запись в NVRAM прошивки. Файлы GRUB у вас есть, поэтому нужно либо создать NVRAM‑запись заново, либо через BIOS указать на существующий efi‑файл. Ниже — проверенные способы (от простого к универсальному).
1) Самый простой — через Linux (live USB) с efibootmgr / grub-install
- Загрузитесь с live‑USB в UEFI‑режиме (это важно — если загрузились в Legacy/CSM, efivar/efibootmgr не будет работать).
- Найдите EFI‑раздел:
- sudo lsblk -f
- или sudo fdisk -l
Обычно это маленький FAT32 раздел (~100–500 МБ), тип EFI.
- Смонтируйте его, например:
- sudo mkdir -p /mnt/esp
- sudo mount /dev/sdXY /mnt/esp (sdXY — ваш EFI‑раздел)
- Если хотите просто создать запись, не переустанавливая GRUB (файлы уже есть):
- sudo efibootmgr -c -d /dev/sdX -p Y -L "GRUB" -l '\EFI\GRUB\grubx64.efi'
- /dev/sdX — диск с EFI‑разделом, p Y — номер раздела (не /dev/sdXY, а раздел указать как -p 1 и т.п.)
- путь указывается с обратными слешами и в кавычках: '\EFI\GRUB\grubx64.efi'
- Проверить: sudo efibootmgr -v
- Если хотите полностью "переустановить" GRUB и создать запись корректно:
- Смонтируйте корневой раздел дистрибутива и EFI:
- sudo mount /dev/sdXZ /mnt (корень вашей системы)
- sudo mount /dev/sdXY /mnt/boot/efi (EFI)
- sudo mount --bind /dev /mnt/dev; sudo mount --bind /proc /mnt/proc; sudo mount --bind /sys /mnt/sys
- sudo chroot /mnt
- В chroot:
- grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
- update-grub
- exit, отмонтировать и перезагрузиться.
2) Через меню UEFI / BIOS (если есть)
Многие платы/ноутбуки позволяют в разделе "Boot" -> "Add New Boot Option" указать файл на EFI‑разделе. Выбираете диск -> EFI раздел -> \EFI\GRUB\grubx64.efi (или shimx64.efi). После сохранения запись появится в списке.
3) Через Windows (GUI) — EasyUEFI
Если хотите из Windows, установите EasyUEFI (есть бесплатная версия/триал). В ней можно добавить новый UEFI Boot Entry, указав путь к файлу (EFI\GRUB\grubx64.efi). bcdedit напрямую не создаёт сторонние EFI‑записи для Linux.
4) Если Secure Boot включён
- Многие дистрибутивы используют shim (shimx64.efi). Если Secure Boot включён, лучше указывать EFI\UBUNTU\shimx64.efi (или аналог для вашего дистро) либо подписанный grub. Иначе запись может не загружаться или BIOS её не примет.
- Если efibootmgr выдаёт ошибки, временно отключите Secure Boot в UEFI для диагностики.
5) Устранение возможных проблем
- Убедитесь, что live‑USB загружен в UEFI, а не в Legacy. Проверить: [ -d /sys/firmware/efi ] && echo UEFI || echo Legacy
- Если efibootmgr выдаёт: "EFI variables are not supported" — вы не в UEFI.
- Если после создания записи она исчезает — некоторые прошивки «предпочитают» Windows Boot Manager и могут переписывать порядок; в таком случае можно:
- Переименовать/переместить ваш efi файл как EFI\Boot\bootx64.efi (временное решение — загрузка как removable), или
- В BIOS выставить порядок приоритетов/блокировать изменение, или
- Использовать shim/secure boot подход (иногда Windows обновления меняют порядок).
6) Быстрое решение — Boot‑Repair (Ubuntu)
Загрузитесь с Ubuntu live, установите и запустите Boot‑Repair — он автоматически восстановит в большинстве случаев:
- sudo add-apt-repository ppa:yannubuntu/boot-repair; sudo apt update; sudo apt install -y boot-repair
- boot-repair -> Recommended repair
Резюме/рекомендация
- Если вы умеете работать в Linux: загрузитесь с UEFI‑live и выполните efibootmgr -c … или grub-install в chroot — это надёжно и быстро.
- Если нет — используйте меню UEFI (Add boot option) или EasyUEFI в Windows.
Если хотите, напишите модель материнской платы/ноутбука и точный путь к файлу в EFI (или вывода lsblk/blkid и содержимое EFI), и я подскажу конкретную команду efibootmgr или шаги для вашего случая.