Efibootmgr windows: Как я научился напрямую перезагружаться в нужную ОС через UEFI / Хабр

Как я научился напрямую перезагружаться в нужную ОС через UEFI / Хабр

Добрый вечер, Habrahabr!

Сегодня мы научимся перезагружаться из Linux прямиком в Windows и обратно всего за один (двойной) клик.

Дано:

  • Два диска с GPT с разными ОС
  • Материнская плата с UEFI и отключеным Legacy Mode
  • Windows, которую бережно поставили с полной поддержкой UEFI
  • Linux (у меня Manjaro), который бережно поставили, выпилив любое упоминание GRUB и прочих старомодных вещей
  • rEFInd — красивый менеджер загрузки (нет, не загрузчик)

Надо:

  • Написать два скрипта на *sh и cmd (bat), которые позволят перезагрузиться в нужную ОС

Примечания:

  • Рабочие варианты обозначены, как Решение, остальное — мои рассуждения и описание пути к цели.
  • Я сознательно опускаю описание тех деталей, которые не относятся к сути настройки, либо легко варьируются. Упоминаются же эти детали потому, что для меня они не были очевидны на момент настройки, поэтому статья становится более понятной для неискушенных читателей, которые не будут видеть в ней инструкцию по рисованию совы.
  • Почему стоит быть осторожным при модификации NVRAM

Linux:


Linux — прекрасная база для работы с компьютером, поэтому всё, что нам нужно, уже есть в репозиториях, а коллективный разум сообщества знает всё и всегда готов помочь. Поэтому, после недолгого изучения интернета, ставим efibootmgr:

У меня это было так

sudo pacman -S efibootmgr

Отлично, теперь запускаем:

sudo efibootmgr

Видим что-то вроде этого

Timeout: 1 seconds
BootOrder: 0001,0000
Boot0000* Windows Boot Manager
Boot0001* rEFInd Boot Manager

Внимательные читатели уже наверняка заметили, что в выводе что-то не так, но тогда я был окрылён мыслью о том, что через 15 минут буду летать между операционками без проблем, и не обратил на это должного внимания.

Ок, 3 минуты на документацию, и мы находим нужный параметр «-n«, который выставляет кастомый порядок загрузки ровно на один раз. Пробуем выполнить эту команду:
Решение

sudo efibootmgr -n 0000 && sync && reboot

И оказываемся в Windows, как того и желали. Теперь эту команду записываем в скрипт/alias/*.desktop-файл и радуемся тому, как всё здорово получилось.

Windows:


Началось всё с поиска аналога efibootmgr для Windows, которого в чистом виде, конечно же, нет. Для успокоения совести я даже попытался использовать Linux Subsystem, но это, конечно же, не сработало.

Беглый поиск по интернетам показал, что схожим функционалом по модификации NVRAM обладает утилита bcdedit. Отлично, думаю я, запускаю PowerShell из-под Администратора и пишу

bcdedit /enum firmware

Вот что я увидел

Firmware Boot Manager
---------------------
identifier              {fwbootmgr}
displayorder            {6893bb38-946b-11e7-b175-9301bd8a88f4}
                        {bootmgr}
timeout                 1
Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\bootmgfw. efi
description             Windows Boot Manager
locale                  ru-RU
inherit                 {globalsettings}
default                 {current}
resumeobject            {6893bb40-946b-11e7-b175-9301bd8a88f4}
toolsdisplayorder       {memdiag}
timeout                 30
Firmware Application (101fffff)
-------------------------------
identifier              {6893bb38-946b-11e7-b175-9301bd8a88f4}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\REFIND\REFIND_X64.EFI
description             rEFInd Boot Manager

Где Linux? Куда грузиться? Ненавижу винду

На самом деле оказалось, что виновата не Windows, а я (да-да, тот самый момент для внимательных пользователей), и вот почему: rEFInd — прекрасная утилита, которая обычно, для корректной работы, требует только установить себя. Она умеет подхватывать все .efi файлы, разные дистрибутивы с разными ядрами, сама подставляет иконки. Прелесть, а не инструмент. Но это сыграло со мной злую шутку, так как оказалось, что UEFI ничего не знает про Linux, так как отсутствует соответствующий ему . efi-файл.

Поэтому презагружаемся обратно в Linux, конфигурируем systemd-boot (bootctl). Теперь всё выглядит вот так:

Timeout: 1 seconds
BootOrder: 0001,0003,0000,0002
Boot0000* Windows Boot Manager
Boot0001* rEFInd Boot Manager
Boot0002* Linux Boot Manager
Boot0003* Manjaro

Возвращаемся обратно и снова запускаем.

bcdedit /enum firmware

Вот что я увидел теперь

Firmware Boot Manager
---------------------
identifier              {fwbootmgr}
displayorder            {6893bb38-946b-11e7-b175-9301bd8a88f4}
                        {bootmgr}
                        {ff0bc716-c088-11e7-bf74-000acd2dac7d}
                        {ff0bc716-c088-11e7-bf74-000acd2dac7d}
timeout                 1
Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  ru-RU
inherit                 {globalsettings}
default                 {current}
resumeobject            {6893bb40-946b-11e7-b175-9301bd8a88f4}
toolsdisplayorder       {memdiag}
timeout                 30
Firmware Application (101fffff)
-------------------------------
identifier              {6893bb38-946b-11e7-b175-9301bd8a88f4}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\REFIND\REFIND_X64. EFI
description             rEFInd Boot Manager
Firmware Application (101fffff)
-------------------------------
identifier              {ff0bc716-c088-11e7-bf74-000acd2dac7d}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI
description             Linux Boot Manager
Firmware Application (101fffff)
-------------------------------
identifier              {ff0bc717-c088-11e7-bf74-000acd2dac7d}
device                  partition=\Device\HarddiskVolume1
path                    \EFI\manjaro\vmlinuz-4.13-x86_64
description             Manjaro

Тут стоит упомянуть, что проблему мне помогали решать пользователи reddit. Именно благодаря им мы имеем следующий шаг:

bcdedit /bootsequence {ff0bc716-c088-11e7-bf74-000acd2dac7d}

Где аргументом является identifier необходимого варианта — Linux Boot Manager.

Troubleshooting

Powershell не даёт нормально выполнить эту команду, ругаясь на

The entry list data is not valid as specified. 

Всё из-за того, что Microsoft периодически любит что-нибудь сломать. Решение просто и элегантно — вызываем классический CMD и работаем в нём. Это можно сделать командой

cmd

Перезагружаемся и видим, что порядок загрузки не изменился, а мы оказались в первом элементе в BootOrder (у меня это был rEFInd), выбираем Windows и видим страшный привет из времен DOS, который говорит нам, что \EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI не найден. Да, мы изменили параметры загрузчика Windows, но не UEFI.

Борьба с этой ошибкой заняла у меня все праздники, но ничего путного не получалось. Я уже подумывал написать на C++ небольшую программку для этого (то, что это возможно, следует из существования такого софта, как EasyUEFI).

Но тут на очередном сайте я обнаружил вот такую конструкцию

 bcdedit /set {bootmgr} path ....

И тут меня осенило, что можно прямо сказать bcdedit что и куда писать. Дальше стоило только проверить догадку:
Решение

bcdedit. exe /set {fwbootmgr} bootsequence {ff0bc716-c088-11e7-bf74-000acd2dac7d} /addfirst

Тут важно, что мы явно сказали писать не в {bootmgr} (как он, видимо, делает по-умолчанию), а в {fwbootmgr}, что и является нашими настройками UEFI.

Перезагружаемся, и всё работает так, как мы этого хотели. Сохраняем это дело в bat/lnk, дописываем

shutdown /r /t 0

Выставляем запуск из-под администратора и готово!

Спасибо за внимание! Буду крайне рад замечаниям по технической части в комментариях, замечаниям по оформлению — в ЛС.

Параметры системного хранилища BCD для UEFI


  • Статья

  • Чтение занимает 5 мин

Для типичного сценария развертывания не нужно изменять хранилище BCD. В этом разделе рассматриваются различные параметры BCD в хранилище BCD, которые можно изменить. В системах UEFI сюда входят параметры для следующих загрузочных приложений:

  • диспетчер загрузки Windows;
  • загрузчик Windows
  • средство тестирования памяти Windows

В следующих разделах подробно описаны доступные параметры для каждого из этих загрузочных приложений и способы изменения каждого приложения для систем UEFI.

Для простоты примеры BCDEdit в этом разделе изменяют системное хранилище BCD. Чтобы изменить другое хранилище, например копию шаблона BCD, добавьте имя хранилища в командную строку.

Windows Параметры диспетчера загрузки для UEFI

Windows Диспетчер загрузки ({bootmgr}) управляет процессом загрузки. Системы на основе UEFI содержат диспетчер загрузки встроенного ПО Bootmgfw.efi, который загружает приложение EFI, основанное на переменных, хранящихся в NVRAM.

Параметры BCD для элементов и path элементов в диспетчере device загрузки Windows указывают диспетчер загрузки встроенного ПО. Шаблон с именем BCD-template для Windows включает следующие параметры для диспетчера загрузки Windows.

## Windows Boot Manager
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager

Параметр устройства

Элемент device указывает том, содержащий Windows Boot Manager. Для систем device UEFI элемент для диспетчера загрузки Windows задается буквой тома системного раздела. Чтобы определить правильную букву тома, используйте средство Diskpart для просмотра разделов диска. В следующем примере предполагается, что в системе есть один жесткий диск с несколькими секциями, включая системный раздел, которому назначена буква диска S.

Следующие команды Diskpart выбирают диск 0, а затем перечисляют сведения о томах на этом диске, включая буквы диска. В нем отображается том 2 в качестве системного раздела.

DISKPART> select disk 0
DISKPART> list volume
  Volume ###  Ltr  Label   Fs     Type        Size     Status     Info
  ----------  ---  ------  -----  ----------  -------  ---------  ------
  Volume 0     D           NTFS   Partition    103 GB  Healthy
  Volume 1     C           NTFS   Partition     49 GB  Healthy    Boot
  Volume 2     S           FAT32  Partition    200 MB  Healthy    System

Если системный раздел не содержит назначенную букву диска, назначьте ее с помощью Diskpart assign команды. В следующем примере предполагается, что системный раздел является томом 2 и назначает его S в качестве буквы диска.

Diskpart
select disk 0
list volume
select volume 2   // assuming volume 2 is the system partition
assign letter=s

После определения тома системного раздела задайте device элемент для Windows Boot Manager соответствующим буквам диска. В следующем примере задается диск device S.

Bcdedit /set {bootmgr} device partition=s:// system partition

Совет

Если вы ранее использовали Diskpart для получения букв диска, а затем перезагрузили компьютер, перед выполнением этой команды используйте Diskpart, чтобы снова проверить буквы диска. В зависимости от среды буквы дисков могут изменяться, поэтому убедитесь, что вы устанавливаете правильную секцию.

Параметр пути

Элемент path указывает расположение приложения Windows Boot Manager на этом томе. Для систем path UEFI указывает диспетчер загрузки встроенного ПО, путь к которому имеет значение \EFI\Microsoft\Boot\Bootmgfw. efi.

Чтобы убедиться, что шаблон BCD-template имеет правильный путь, перечислив значения в хранилище следующим образом:

bcdedit /store bcd-template /enum all

Чтобы явно задать значение path\EFI\Microsoft\Boot\Bootmgfw.efi, используйте следующую команду.

Bcdedit /set {bootmgr} path \efi\microsoft\boot\bootmgfw.efi

Другие параметры

Следует задать для Windows Диспетчер загрузки первый элемент в порядке отображения встроенного ПО UEFI, как показано в следующем примере.

Bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst

Кроме того, следует указать самый верхний Windows загрузчик приложения в порядке отображения диспетчера загрузки Windows. В следующем примере показано, как поместить указанный загрузчик Windows в начало порядка отображения.

Bcdedit /set {bootmgr} displayorder {<GUID>} /addfirst

В предыдущем примере <GUID> — это идентификатор указанного объекта загрузчика Windows. В следующем разделе подробно рассматривается этот идентификатор.

Примечание

Система с несколькими установленными операционными системами имеет несколько экземпляров загрузчика Windows. Каждый экземпляр загрузчика Windows имеет собственный идентификатор. Вы можете задать для загрузчика по умолчанию Windows ({default}) любой из этих идентификаторов.

Параметры загрузчика Windows

Хранилище BCD имеет по крайней мере один экземпляр и при необходимости несколько экземпляров загрузчика Windows. Отдельный объект BCD представляет каждый экземпляр. Каждый экземпляр загружает одну из установленных версий Windows с указанной конфигурацией элементов объекта. Каждый Windows загрузчик имеет собственный идентификатор, а параметры объекта devicepath указывают на правильную секцию и загрузочное приложение.

BCD-templateдля Windows имеет один объект загрузчика Windows со следующими параметрами.

## Windows Boot Loader
identifier              {9f25ee7a-e7b7-11db-94b5-f7e662935912}
device                  partition=C:
path                    \Windows\system32\winload. efi
description             Microsoft Windows Server
locale                  en-US
inherit                 {bootloadersettings}
osdevice                partition=C:
systemroot              \Windows

Идентификатором этого загрузчика Windows является{9f25ee7a-e7b7-11db-94b5-f7e662935912}. Этот GUID можно использовать в системе или позволить средству BCDEdit создать новый GUID.

Чтобы упростить команды BCDEdit, можно указать один из загрузчиков Windows в системном хранилище BCD в качестве загрузчика по умолчанию. Затем вместо полного GUID можно использовать стандартный идентификатор ({default}). В следующем примере загрузчик Windows для EFI в качестве загрузчика по умолчанию предполагается, что он использует GUID идентификатора из шаблона BCD-template.

Bcdedit /default {9f25ee7a-e7b7-11db-94b5-f7e662935912}

Параметры устройств и OSDevice

Следующие элементы указывают ключевые расположения:

  • Элемент device указывает секцию, содержащую загрузочное приложение.
  • Элемент osdevice указывает секцию, содержащую системный корневой каталог.

Для загрузчика Windows для EFI оба элемента обычно задаются буквой диска системного раздела Windows. Однако если BitLocker включен или компьютер имеет несколько установленных версий Windows и osdevicedevice может иметь разные секции. Шаблон BCD устанавливает оба элемента на диск C, что является типичным значением. Можно также явно задать osdevice значения и device значения, как показано в следующем примере. В примере также предполагается, что вы указали загрузчик Windows для EFI в качестве объекта загрузчика по умолчанию.

Bcdedit /set {default} device partition=c:
Bcdedit /set {default} osdevice partition=c:

Параметр пути

Элемент path загрузчика Windows указывает расположение загрузчика на этом томе. Для систем path UEFI указывает загрузчик Windows для EFI, путь к которому равен\Windows\System32\Winload. efi.

Вы можете убедиться, что шаблон BCD имеет правильное path значение, перечислив значения в хранилище. Можно также явно задать path значение, как показано в следующем примере.

Bcdedit /set {default} path \windows\system32\winload.efi

Windows Параметры средства тестирования памяти

Средство тестирования памяти Windows{memdiag} () выполняет диагностику памяти во время загрузки. Параметры BCD для приложения device и path элементов указывают правильное приложение.

Примечание

Компьютеры Intel Itanium не включают средство тестирования памяти Windows и не требуют {memdiag} параметров.

Шаблон BCD для Windows имеет следующие параметры.

## Windows Memory Tester
identifier              {memdiag}
device                  partition=\Device\HarddiskVolume1
path                    \boot\memtest.exe
description             Windows Memory Diagnostic

Параметр устройства

Для систем device UEFI элемент для средства тестирования памяти Windows задается буквой диска системного раздела. В следующем примере предполагается, что системный раздел является диском S, как показано в предыдущих примерах.

Bcdedit /set {bootmgr} device partition=s:  // system partition

Параметр пути

Элемент path указывает расположение диспетчера Windows Test Manager на томе, указанном элементомdevice. Для систем path UEFI указывает версию EFI приложения (\EFI\Microsoft\Boot\Memtest.efi).

Вы можете убедиться, что шаблон BCD имеет правильное path значение, перечислив значения в хранилище. Средство BCDEdit также можно использовать для явного path задания значения, как показано в следующем примере.

Bcdedit /set {memdiag} path \efi\microsoft\boot\memtest.efi

powershell — эквивалент Windows для efibootmgr?

В своем ответе я буду ссылаться на (U)EFI — (унифицированный) расширяемый интерфейс прошивки — просто как EFI.

Также для всех команд следует использовать командную строку с повышенными привилегиями, т. е. запускать cmd.exe (не PowerShell!) с правами администратора!

Я как раз искал то же самое. У меня была (временная) проблема, связанная с тем, что Linux не мог получить доступ к EFI NVRAM или изменить ее, включая последовательность загрузки. (Что я в конце концов решил.) За это время я изучил способ сделать это в Windows и обнаружил, что bcdedit на самом деле имеет тот же набор функций, включая а) создание новой записи меню загрузки EFI и б) изменение последовательности загрузки EFI.

Если загрузчик Linux уже настроен, последовательность может быть изменена с помощью bcdedit /enum firmware . Важен только GUID объекта загрузчика, указанный вместе с загрузчиком Linux, т.е. строка вида {01234567-89AB-CDEF-0123-456789ABCDEF} , и заменить {} в следующих примерах с вашим фактическим идентификатором GUID.

Любой загрузчик встроенного ПО может быть установлен в качестве параметра загрузки EFI по умолчанию с помощью bcdedit /set {fwbootmgr} default {} .

Чтобы установить запись загрузчика EFI в качестве первого элемента загрузки в списке, можно использовать bcdedit /set {fwbootmgr} displayorder {} /addfirst .

Проблема заключается в том, что у вас нет записи загрузчика EFI для загрузчика Linux (возможно, она была каким-то образом удалена или не была установлена ​​во время установки). Важно только то, что загрузчик Linux уже настроен, потому что это то, что нужно сделать в Linux. В настоящее время стандартом является GRUB ( GR и U унифицированный загрузчик B , версия 2). В системах EFI он должен быть установлен на ESP (системный раздел EFI) в \EFI\\.efi или аналогичный. Например. для Ubuntu это будет \EFI\Ubuntu\grubx64.efi . Для Arch Linux это может быть \EFI\arch\grubx64.efi или \EFI\GRUB\grubx64.efi для систем x86-64 (и \EFI\arch\grub.efi или \EFI\GRUB). \grub. efi для x86-32).

Чтобы узнать, какие существуют загрузчики EFI, сначала необходимо смонтировать ESP в Windows, что можно сделать с помощью diskpart .

 DISKPART> выберите диск 0
DISKPART> список томов
  Volume ### Ltr Этикетка Fs Тип Размер Статус Информация
  ---------- --- ------ ----- ---------- ------- --------- ------
  ...
  Том 2 Раздел FAT32 200 МБ Здоровая система
DISKPART> выберите том 2
DISKPART> назначить букву = S
ДИСК> выход
 

Вышеприведенное предполагает, что a) ESP, показанный как System в столбце Info, является томом 2 (замените его фактическим номером тома) и что b) буква диска S все еще доступна (не используется ) до этого момента, в противном случае используйте любую другую свободную букву диска (от A до Z).

ESP теперь доступен как назначенный диск, в примере S: . Посмотрите на этот диск, чтобы увидеть, есть ли какие-либо загрузчики EFI под \ EFI . .. Это можно сделать, например. с помощью проводника Windows или в командной строке с повышенными привилегиями:

 с:
дир /с /кв
 

Обратите внимание, , что это присвоение буквы диска не является постоянным, т.е. после перезагрузки Windows ESP больше не будет монтироваться, как и должно быть.

Теперь bcdedit можно использовать для добавления загрузчика EFI в загрузочное меню EFI и установки его в качестве нового значения по умолчанию следующим образом (соответственно изменить пути и идентификаторы GUID):

 bcdedit /set {bootmgr} path \efi \grub\grubx64.efi
bcdedit/перечисление {bootmgr}
bcdedit /set {fwbootmgr} displayorder {} /addfirst
bcdedit /set {fwbootmgr} по умолчанию {}
 

Обратите внимание , что изменение порядка отображения совершенно необязательно!

Все эти команды работают только с cmd.exe , как и с PowerShell (который также должен быть оболочкой с повышенными привилегиями, то есть «запускать от имени администратора»), требуются дополнительные кавычки:

 bcdedit /set '{bootmgr}' путь \efi\grub\grubx64. efi
bcdedit/enum '{bootmgr}'
bcdedit /set '{fwbootmgr}' displayorder '{}' /addfirst
bcdedit /set '{fwbootmgr}' по умолчанию '{}'
 

Это сработало для меня, поскольку загрузчик Linux EFI был установлен по умолчанию в Windows 10 навсегда. IMHO bcdedit эквивалентен efibootmgr в Windows, только с дополнительным уровнем (в данном случае абсолютно ненужным) случайных идентификаторов GUID для ссылки на отдельные загрузчики EFI…

linux — установить Windows как запись по умолчанию с помощью efibootmgr, но показывает меню

У меня это меню запускает мой ноутбук.
Как видите, у меня есть несколько записей для CentOS 8.
Но я хочу установить по умолчанию, мои Диспетчер загрузки Windows (в /dev/nvme01p1) запись…

Я думал в efibootmgr .

Чтение этой статьи https://www.lifewire.com/change-the-efi-boot-order-efibootmgr-4028027 и этой статьи https://www.linuxbabe.com/command-line/how-to-use -linux-efibootmgr-examples и https://www. runscripts.com/support/guides/tools/multiboot-usb/dual-booting-repair

ESP (системный раздел EFI)

Можно ли сохранить пункты меню , перейдя на Windows с efibootmgr ?

Вот мой efibootmgr -v :

 [root@centos /]# efibootmgr -v
BootCurrent: 0000
Время ожидания: 0 секунд
BootOrder: 0000,0017,0001,0012,0014,0015,0016,0018,0019,001A
Boot0000* CentOS Linux HD(6,GPT,5291c15b-2f5c-42a0-b3e3-2c69f27b801b,0x1b7ec800,0x200000)/Файл(\EFI\centos\shimx64.efi)
Boot0001* Диспетчер загрузки Windows HD(1,GPT,31ebd6ef-ec98-42c7-a57b-7855c2c9a1f3,0x800,0x82000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x ...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...7. ...............
Boot0010 Setup FvFile (721c8b66-426c-4e86-8e99-3457c46ab0b9)
Boot0011 Меню загрузки FvFile (86488440-41bb-42c7-93ac-450fbf7766bf)
Boot0012* NVMe: SKHynix_HFM512GDHTNI-87A0B PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,AC-E4-2E-00-0A-25-B5-D3). ... 2.ЛН........
Boot0013 UEFI Diagnostics FvFile (f8397897-e203-4a62-b977-9e7e5d94d91b)
Boot0014* Жесткий диск ATA: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f604)
Boot0015 * Жесткий диск ATA: VenMsg (bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f605)
Boot0016* ATAPI CD: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a354)
Boot0017* USB HDD: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,33e821aaaf33bc4789bd419f88c50803)
Boot0018* PCI LAN: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,78a84aaf2b2afc4ea79cf5cc8f3d3803)
Boot0019* USB FDD: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6ff015a28830b543a8b8641009461e49)
Boot001A* USB CD: VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,86701296aa5a7848b66cd49dd3ba6a55)
[root@centos /]#
 

И содержимое моего файла /etc/default/grub

 [root@centos /]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed's, выпуск .*$,g' /etc/system-release)"
GRUB_DEFAULT=сохранено
GRUB_DISABLE_SUBMENU=истина
GRUB_TERMINAL_OUTPUT="консоль"
GRUB_CMDLINE_LINUX="crashkernel=автоматическое возобновление=UUID=42640b78-ce32-403c-8705-8c12e2d02855 rhgb тихо"
GRUB_DISABLE_RECOVERY="истина"
GRUB_ENABLE_BLSCFG=истина
[root@centos /]#
 

 [root@centos /]# grep /efi /proc/mounts
efivarfs /sys/firmware/efi/efivars efivarfs rw,nosuid,nodev,noexec,relatime 0 0
/dev/nvme0n1p6 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=winnt,errors=remount-ro 0 0
[root@centos /]#
[root@centos /]# ссылка для чтения /etc/grub2-efi.

Читайте также: