Утилита efibootmgr для командной строки в Linux предоставляет удобные средства для управления UEFI-загрузочным меню. В этом руководстве представлены пять примеров использования efibootmgr. Предполагается, что вы уже установили Linux в режиме UEFI.
Для установки утилиты командной строки efibootmgr воспользуйтесь следующими командами.
sudo apt install efibootmgr
Федора, ЦентОС, РедХат.
sudo dnf install efibootmgr
sudo zypper install efibootmgr
sudo pacman - S efibootmgr
Содержание статьи
Просмотр актуальных параметров
Просто выполните команду, указанную ниже. В некоторых дистрибутивах Linux, например, в Debian, её следует запускать с правами sudo.
efibootmgr
Данная команда позволяет увидеть текущую активную загрузочную запись (BootCurrent), порядок загрузки, а также все имеющиеся загрузочные записи. Каждая запись определяется загрузочным номером в шестнадцатеричной системе. Звездочка (*) указывает на то, что данная загрузочная запись является активной.

Вы можете также использовать опцию — v для вывода дополнительной информации.
efibootmgr - v
Вы сможете ознакомиться с номером раздела EFI, типом таблицы разделов (GPT), UUID этого раздела и загрузочным файлом.

На представленном выше скриншоте видно, что мой раздел EFI (ESP) располагается на седьмом разделе жёсткого диска (/dev/sda7). Это таблица разделов GPT.
Перестановка последовательности загрузки
Сначала зафиксируйте текущую последовательность загрузки. К примеру, вот моя последовательность загрузки:
0013,0012,0014,0000,0001,0002,0003,000D,0011,0007,0008,0009,000A,000B,000C,000E
После этого введите следующую команду.
sudo efibootmgr - o
Добавьте последовательность загрузки к этой команде.
sudo efibootmgr - o 0013,0012,0014,0000,0001,0002,0003,000D,0011,0007,0008,0009,000A,000B,000C,000E
Если вы хотите, чтобы запись 0012 загрузилась первой, просто переместите её влево от 0013 и нажмите Enter.
sudo efibootmgr - o 0012,0013,0014,0000,0001,0002,0003,000D,0011,0007,0008,0009,000A,000B,000C,000E
Внесение информации о загрузке
Если на вашем компьютере присутствует несколько дистрибутивов Linux, и один из них не имеет записи для загрузки через UEFI, вы можете создать такую запись самостоятельно.
Загрузитесь в дистрибутив Linux, который не содержит записи UEFI, и убедитесь, что загрузчик GRUB для EFI установлен в нём.
sudo apt install grub-efi
sudo dnf install grub2-efi-modules
После этого подключите раздел EFI (ESP) к каталогу /boot/efi/. В данном случае /dev/sda7 выступает в роли ESP.
sudo mount /dev/sda7 /boot/efi/
После этого необходимо установить загрузчик Grub на ESP.
sudo grub-install /dev/sda --target=x86_64-efi --efi-directory=/boot/efi/
x86_64-efi указывает на то, что мы устанавливаем Grub для UEFI. По умолчанию применяется цель i386-pc, которая предназначена для классической BIOS.
Теперь вы должны заметить новую запись в меню загрузки UEFI, созданную с помощью команды bootmgr. Во время установки Grub сначала копирует файл загрузчика. efi в каталог /boot/efi/EFI/, который обычно называется grubx64.efi. Затем выполняется команда, добавляющая новую запись в меню загрузки UEFI.
efibootmgr - c - d /dev/sda - p 7 - L - l \EFI\\grubx64.efi
Новая запись станет первой в очереди загрузки.
NVMe SSD
Если у вас установлен NVME SSD, имя диска будет отличаться. Чтобы узнать, как называется ваш диск, выполните следующую команду.
sudo parted - l
К примеру, если ваш EFI-раздел расположен на /dev/nvme1n1p9, примонтируйте его в /boot/efi/.
sudo mount /dev/nvme1n1p9 /boot/efi/
Установите загрузчик Grub на раздел EFI.
sudo grub-install /dev/nvme1 --target=x86_64-efi --efi-directory=/boot/efi/
Устранение записи о загрузке
Представим, что на вашем жёстком диске установлено несколько дистрибутивов Linux, и у вас имеется несколько загрузочных записей, как показано на предыдущем изображении. После того как вы удалили один из дистрибутивов, запись его загрузки всё ещё остаётся. Чтобы убрать эту запись, выполните следующие шаги:
sudo efibootmgr - b - B
sudo efibootmgr - b 0014 - B
Опция — b задает идентификатор загрузки. Опция — B убирает этот идентификатор.
Включение или отключение записи загрузки
Знак звёздочки рядом с загрузкой указывает на её активное состояние. Если звёздочки отсутствуют, значит, запись неактивна. Чтобы активировать запись, выполните следующие действия:
sudo efibootmgr - b - a
Чтобы отключить запись, выполните следующее:
sudo efibootmgr - b - A
На моём другом компьютере с Linux Mint меню GRUB всегда скрыто, независимо от предпринимаемых действий. Порой мне требуется загрузить другой дистрибутив, такой как Fedora. В таких случаях я отключаю запись загрузки Linux Mint в меню UEFI. Теперь появляется меню Fedora, которое отображает GRUB.
Тем не менее, при обновлении до новой версии Linux Mint запись загрузки данной операционной системы будет восстановлена во время процесса обновления.
Можно настроить файл службы systemd для автоматического отключения записи загрузки в Linux Mint.
sudo nano /etc/systemd/system/disable-boot-entry.service
Включите следующую строку в данный файл.
[Unit] Description=disable Linux Mint Boot Entry After=multi-user. target [Service] Type=oneshot ExecStart=/bin/bash - c '/usr/bin/efibootmgr - b 0008 - A' [Install] WantedBy=multi-user. target
Сохраните файл и закройте его. После этого включите данную службу.
sudo systemctl enable disable-boot-entry.service
Чтобы узнать больше о работе с systemd, ознакомьтесь с данной статьей.
- Systemd в Linux – это инструмент для управления сервисами, уровнями загрузки и логами.
Заключение
Надеюсь, что этот учебник помог вам разобраться с командой Linux efibootmgr. Задумывались ли вы о том, как загрузить ISO-файл без использования загрузочной флешки или CD? Ознакомьтесь с нашим следующим руководством:
- Как выполнить загрузку ISO-файлов через загрузчик Grub2
Если этот пост оказался для вас полезным, подписывайтесь на нашу бесплатную рассылку новостей, следите за нами в Twitter или ставьте лайк нашей странице в Facebook. Благодарим вас за посещение!

