Если вы замените материнскую плату UEFI, вам нужно будет добавить пути ваших загрузчиков ОС в UEFI.
Это может быть сделано с помощью efibootmgr
утилиты. Вам нужно будет загрузиться с Ubuntu LiveUSB, найти раздел EFI и добавить записи.
Раздел EFI можно легко найти. Это небольшой раздел fat32, который boot
во многих случаях имеет флаг.
Загрузчики EFI - это файлы, расположенные в вашем разделе EFI. У Ubuntu есть два загрузчика grubx64.efi
и shimx64.efi
. Последний подписан ключом Microsoft для возможности загрузки с включенной безопасной загрузкой. Но в большинстве случаев любой из них работает. Вы можете смело добавлять только shimx64.efi
.
Эти погрузчики расположены по адресу /boot/EFI/ubuntu
.
Таким образом, чтобы добавить запись в UEFI, вам нужно будет запустить
sudo efibootmgr -c -l "\EFI\UBUNTU\SHIMX64.EFI" -L ubuntu -d /dev/sdX -p N
где /dev/sdX
диск, на котором находится раздел EFI, и N
номер этого раздела. Например, /dev/sdb2
это будет выглядеть так
sudo efibootmgr -c -l "\EFI\UBUNTU\SHIMX64.EFI" -L ubuntu -d /dev/sdb -p 2
/dev/sda1
по умолчанию. Если у вас есть раздел EFI, вы можете пропустить -d
и -p
параметры.
-c
Параметр для создания записи UEFI.
-l
путь к загрузчику в формате Windows, начинающийся \EFI
по некоторым причинам.
-L
это ярлык. Вы увидите это в своем BIOS как вариант загрузки. Вы можете изменить это на что-то другое, но я не уверен, что update-grub
это не изменит его ubuntu
обратно.
Если вы запустите sudo efibootmgr -v
, вы увидите все свои записи с путями и метками.
Вы можете удалить ошибочно добавленную запись, запустив
sudo efibootmgr -Bb nnnn
где nnnn
номер записи.
Больше информации относительно efibootmgr
полезности может быть получено
man efibootmgr
Вы можете добавить записи для других ОС, таких как Windows, таким же образом. Но я не могу дать более подробную информацию о том, в каких файлах и по каким путям они находятся.