После установки Ubuntu 18.04 (x86) (далее — система) с загрузчиком EFI завершающий этап установки вываливается с ошибкой. Система установлена, загрузчик — нет, исправить такую ситуацию возможно при помощи некоторых манипуляций в терминале. Вот действия, которые необходимо произвести:
Загружаемся с загрузочной флешки в LiveUSB (режим UEFI). Определяемся с диском, на котором стоит система. Допустим, встроенный диск ноутбука определен ядром как sda, он имеет 2 раздела:
sda1 [boot, esp] 512 Гб FAT32 — раздел для хранения конфигов EFI
sda2 всё_остальное_место EXT4 — корневой раздел системы (он же root раздел, он же «/» с точки зрения установленной на диск системы)
Определить это можно любым удобным способом. Через тот же gparted или disks, или же через консольную lsblk. В сущности, это Вы должны знать, т.к. систему ставили Вы.
Исходя из этих условий, открываем терминал (Ctrl+Alt+T) и начинаем вводить по одной команде (если ошибка на каком-либо этапе возникает — то останавливаем процесс, и спрашиваем что происходит, демонстрируя вывод ошибки на форуме, или рыская по ней в гугле):
-
sudo mount /dev/sda2 /mnt #если у Вас не sda2 — подставляем свои данные вместо sda2!!!
-
sudo mount /dev/sda1 /mnt/boot/efi #если у Вас не sda1 — подставляем свои данные вместо sda2!!!
-
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
-
sudo cp /etc/resolv.conf /mnt/etc/ #это чтобы сеть была доступна после выполнения chroot’a
-
modprobe efivars # убеждаемся что подгружен модуль ядра для работы с EFI
-
sudo chroot /mnt
-
sudo grub-install —target=x86_64-efi —efi-directory=/boot/efi
-
exit
-
for i in /sys /proc /dev/pts /dev; do sudo umount /mnt$i; done
-
sudo umount /mnt/boot/efi #размонтируем ESP-раздел (чтобы не повредить)
-
sudo umount /mnt
-
sudo reboot
По идее всё. После перезагрузки грузитесь не с флешки, а с встроенного диска ноутбука, — система должна стартовать. Примечание: если по каким-то причинам раздел sda1 у Вас сейчас не существует — создайте его средствами gparted. Основная ценность у Вас на разделе sda2 (корневом)
Не надо использовать GRUB
Это чёртов мастодонт, 90% функциональности которого предназначено для дисков с MBR. Для настройки необходимо отредактировать ряд файлов, после чего выполнить команду генерации конфига. На выходе получается огромная малопонятная нормальному человеку простыня. В составе — гора исполняемых файлов. Ставится командой, которую просто так из головы не возьмешь — надо обязательно лезть в документацию
grub-install --target=x86_64-efi --efi-directory=esp_mount --bootloader-id=grub
Для сравнения — самый простенький UEFI-bootloader, который есть в составе пакета systemd, ставится командой
bootctl install --path=/boot
Эта команда делает ровно две вещи: копирует исполняемый файл загрузчика на EFI-раздел и добавляет свою загрузочную запись в прошивку. А конфиг для неё занимает ровно СЕМЬ строчек.