Якщо ви заміните материнську плату 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є етикеткою. Ви побачите це у своїх біосах як варіант завантаження. Ви можете змінити його на щось інше, але я не впевнений, що update-grubце не змінить його ubuntuназад.
Якщо ви запустите sudo efibootmgr -v, ви побачите всі свої записи з контурами та мітками.
Ви можете видалити неправильно доданий запис, запустивши
sudo efibootmgr -Bb nnnn
де nnnnрекордна кількість.
Більше інформації про efibootmgrкорисність можна отримати у
man efibootmgr
Ви можете додавати записи для інших ОС, як Windows, таким же чином. Але я не можу дати більш детальну інформацію про файли та шляхи, де вони знаходяться.