LINUX.ORG.RU

Хочу разобраться с Grub2+LUKS1+EFI

 , ,


0

1

Загрузился в openSUSE на USB live stick, начал установку, сделал разметку и понял (установщик сообщил, что нет раздела для загрузчика), что загрузился в legacy mode. Решил, что и хрен с ним, установлю потом загрузчик вручную. Установка завершилась штатно, не считая ошибки установки загрузчика.

Разделы такие:

nvme0n1

  1. /boot/efi — fat32
  2. / — LUKS1+XFS
  3. swap (тоже шифрованный)

sda

  1. /home — LUKS1+XFS

Загрузился опять таки с флешки, но уже в режиме EFI, открыл рутовый раздел, примонтировал /boot/efi, прибиндил нужное, чрутнулся, добавил GRUB_USE_LINUXEFI="true" в /etc/default/grub, проверил, что /etc/crypttab впорядке, установил граб.

И… нифига не грузится. EFI граб не подхватывает.

Что я упустил и куда копать?

Если кому-то почему-то это кажется важным, железо: Lenovo ThinkCentre на скайлейке, 970 Evo Plus, 870 Evo.

P.S. Да, любители переустанавливать, так будет быстрее, но я хочу разобраться.

★★

Последнее исправление: WitcherGeralt (всего исправлений: 2)

EFI граб не подхватывает.

  • grub не стартует
  • grub стартует, система нет
  • grub стартует, ядро грузится … и всё
  • Ваш вариант
anonymous
()
Ответ на: комментарий от anonymous

А вот хз, я никогда не видел как граб «не стартует». Выглядит так будто эфи его вообще не находит. Как отличить?

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от WitcherGeralt

никогда не видел как граб «не стартует»

Если УЕФИ не видит ЕФИ-загрузчик - no bootable device.

Если только grubx64.efi, без модулей - консоль grub rescue.

Если с модулями, без конфига - консоль grub.

andytux ★★★★★
()
Ответ на: комментарий от WitcherGeralt

я никогда не видел как граб «не стартует». Выглядит так будто эфи его вообще не находит.

теперь понял. скорее всего сейчас у тебя grub не дефолтный загрузчик. надо бы запись добавить с помощью efibootmgr.

anonymous
()
Ответ на: комментарий от WitcherGeralt

если у тебя по дефолту стартует EFI shell можешь из него стартануть EFI/opensuse/grubx64.efi – должна начаться загрузка/появится меню grub. может ещё какие косяки вылезут ;)

anonymous
()
Ответ на: комментарий от WitcherGeralt

В каком положении «secure boot».

opensuse/grubx64.efi

Не знаю, как в сусе, обычно grubx64.efi - неподписанный загрузчик, работает только при выключенном «secure boot». При включенном используется подписанный shim, а он уже вызывает grub.

Или, как уже подсказали самому создать загрузочную запись.

andytux ★★★★★
()
Ответ на: комментарий от andytux

В каком положении «secure boot»

Выключен.

Вообще, глянгул чего на ноуте с аналогичной конфигурацией:

/boot/efi
└── EFI
    ├── boot
    │   ├── bootx64.efi
    │   ├── fallback.efi
    │   └── MokManager.efi
    └── opensuse
        ├── boot.csv
        ├── grub.cfg
        ├── grub.efi
        ├── grubx64.efi
        ├── MokManager.efi
        └── shim.efi

И ничего этого, кроме самого загрузчика, на сабжевом устройстве нет.

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от andytux

вот, кстати, вопрос:

при включенном secure boot при попытке запуска не подписанного загрузчика сообщение об ошибке появляется или «пойди сам догадайся»?

anonymous
()
Ответ на: комментарий от WitcherGeralt

EFI/boot/bootx64.efi – дефолтный загрузчик. возьми да переименуй его в EFI/boot/bootx64.old, а EFI/opensuse/grub.efi скопируй в EFI/boot/bootx64.efi – но это уже «какерство» )

anonymous
()
Ответ на: комментарий от anonymous

Вот, кстати, не помню, почти всегда «secure boot» выключен.

andytux ★★★★★
()
Ответ на: комментарий от anonymous

Ага, я так уже делал на старом Packard Bell, который вообьще ничего кроме дефолтного пути не грузил. Причём путь был такой: /EFI/Microsoft/Boot/bootx64.efi. Пришлось догадаться.

Не, я сейчас с efibootmgr лучше разберусь. Вроде бы добавил, а в списке по F12 один хрен ничего не появилось.

WitcherGeralt ★★
() автор топика
Последнее исправление: WitcherGeralt (всего исправлений: 2)
Ответ на: комментарий от anonymous

В принципе, да. Но этого может быть мало.

Может уж сразу «весь независимый от системы груб» скопировать. Вчера рядом отвечал.

andytux ★★★★★
()
Ответ на: комментарий от anonymous

Какая-то хрень происходит, либо я что-то не так делаю.

Выполняю:

sudo efibootmgr -c -d /dev/nvme0n1 -L 'openSUSE Leap 15.2' -l '\EFI/opensuse/grubx64.efi

Запись появляется в списке, который efibootmgr сам же и выводит.

Перезагружаюсь, EFI по-прежнему запись не видит, загружаюсь с флешки, efibootmgr тоже такую запись уже не выводит.

WitcherGeralt ★★
() автор топика
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от WitcherGeralt

efibootmgr может показать какие записи есть, и какая активная (дефолтная).

в списке по F12 один хрен ничего не появилось

ты про загрузочные устройства? ЕМНИП, efibootmgr на это не влияет.

недавно был спор на ЛОРе: дескать нынешняя спецификация UEFI в качестве загрузочного принимает любой FAT32 («Wow! круто»), а вот раньше надо было «флаги» ставить (на самом деле не флаги, но загрузочный раздел от просто FAT32 «отличался»). и был один комментарий, что ничего кроме бардака это «послабление» не принесёт – вот кажется и сбывается (

anonymous
()

Вообще, без проблем можно тупо с ноута всё скопипастить, заменив конфиг. Но сначала попытаюсь решить проблему более корректно. Это крайняя мера.

WitcherGeralt ★★
() автор топика
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от WitcherGeralt

В сообщении слеш в начале бросается в глаза.

EFI по-прежнему запись не видит, загружаюсь с флешки efibootmgr тоже такую запись уже не выводит.

ой-было было… жаль подробностей не вспомню

  • все записи заняты
  • кривой UEFI firmware
  • SecureBoot очень может быть замешан

@andytux ты же в подобном топике участвовал, может лучше помнишь?

anonymous
()
Ответ на: комментарий от WitcherGeralt

Со слешами там катастрофа. Здесь должны быть одни, там другие. Где, какие я так и не выучил. Но в одном месте все одинаковые. «-l ’\EFI/opensuse/grubx64.efi» - тут явно ошибка.

andytux ★★★★★
()
Ответ на: комментарий от WitcherGeralt

Если не умеешь читать и понимать, то конечно не в тему.

anonymous
()
Ответ на: комментарий от andytux

Это опечатка. Там все слеши обратные, как в винде.

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от WitcherGeralt

Я в курсе, потому говорю про загрузочный раздел (не ESP).

Анончик в первом комментарии правильную ссылку привёл, только не на ту секцию:

https://wiki.archlinux.org/title/Dm-crypt/Encrypting_an_entire_system#Preparing_the_disks

А вообще, поддержу второго анончика, ты б хоть скрины фото приложил, что ли, а то это всё гадание на кофейной гуще.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

это всё гадание на кофейной гуще

ну почему же? загрузочная запись создаётся(?), но не сохраняется. это почти наверняка, «партизанит» SecureBoot & Co . надо перестать рефлексировать, включить SecureBoot и пользоваться «освященным» shim.efi || включить SecureBoot, найти все пункты где он запрещает (не всегда, кстати, понятно что «это» его эпархия) и отключить их, выключить SecureBoot

anonymous
()
Ответ на: комментарий от anonymous

загрузочная запись создаётся(?), но не сохраняется

Я не уверен что создаётся, но и не могу утверждать что не сохраняется. Также она может удаляться при загрузке: есть такие реализации UEFI, которые "подчищают" то что их не устраивает; большинство "забывает" записи, адресованные на отключенные диски; ну и Windows очень любит наводить свой порядок в загрузочных записях и их последовательности, выставляя себя первой, иногда даже заменяя первую запись.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

со слов ТС

загрузочная запись создаётся… после перезагрузки её нет

а со всем остальным соглашусь – UEFI настолько «стандартизован» в реализации, что может быть всё что угодно (и даже то, о чём прежде никто и не слышал)

anonymous
()
Ответ на: комментарий от mord0d

Нафига мне загрузочный раздел, если загрузчик лежит в ESP? Либо одно, либо другое. Я таки в режиме EFI хочу грузится, а не в Legacy.

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от anonymous

со слов ТС

То что видит пострадавший и то что происходит на самом деле может отличаться (подробнее в следующем абзаце).

а со всем остальным соглашусь – UEFI настолько «стандартизован» в реализации, что может быть всё что угодно (и даже то, о чём прежде никто и не слышал)

Вот поэтому я и хочу увидеть своими глазами что у него там происходит. Гадать можно сколько угодно, результата это может (вероятнее всего) не даст.

mord0d ★★★★★
()

После попытки добавления загрузчика в список с помощью efibootmgr -c у меня NVMe вообще исзечает из списка, где можно выбрать приоритет для загрузки. Хотя SSD вполне себе работает, когда гружусь с флешки.

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от WitcherGeralt

Я таки в режиме EFI хочу грузится, а не в Legacy.

Иметь хоть какую-то возможность загрузиться (в Legacy) не нужно? Тогда страдай. ☺

Ещё раз: давай фото настроек UEFI, больше всего интересует всё что касается SecureBoot/CSM, список доступных дисков (и прочих опций загрузки) и список загрузочных записей.

mord0d ★★★★★
()
Ответ на: комментарий от WitcherGeralt

NVMe вообще исзечает из списка

Я уже писал об это здесь:

есть такие реализации UEFI, которые "подчищают" то что их не устраивает

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 1)
Ответ на: комментарий от mord0d

Хотел бы грузиться в Legacy, этого треда бы попросту не было, очевидно.

Как вариант, конечно, если ничего из этого не выйдет. Но пока варианты не исчерпаны.

WitcherGeralt ★★
() автор топика
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от WitcherGeralt

Тебе 100 раз написал, дай фото настроек. Ты продолжаешь пороть чушь. Тебе помощь нужна или ты как обычно газы в лужу пускаешь?

anonymous
()
Ответ на: комментарий от LikeABoss

Он больше на Валеру похож при всем уважении к другим Валерам.

anonymous
()
Ответ на: комментарий от LikeABoss

Там абсолютно ничего интересного, если ты не представляешь себе вполне дефолтный для леново бивис, то пробегай мимо. Фоточка тебе ничего не даст. Ты не увидишь на ней больше, чем вижу я.

WitcherGeralt ★★
() автор топика
Последнее исправление: WitcherGeralt (всего исправлений: 2)
Ответ на: комментарий от WitcherGeralt

Там абсолютно ничего интересного

Ну раз тебе не интересно решать твою проблему…

Ты не увидишь на ней больше, чем вижу я.

Ну тогда и решай свою проблему сам, чего на ЛОР-то припёрся… ах да, надо же поработать на публику.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Была бы проблема. Заголовок прочти.

Вопрос был про то, не упустил ли я чего в при установке grub, а не как заставить эту хрень грузиться.

WitcherGeralt ★★
() автор топика
Ответ на: комментарий от WitcherGeralt

Вопрос был про то, не упустил ли я чего в при установке grub

В таком случае ты забыл расписать как ты ставил GRUB2.

Была бы проблема. Заголовок прочти.

Ну так и разбирайся, а не работай на публику. ☺

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Загрузился опять таки с флешки, но уже в режиме EFI, открыл рутовый раздел, примонтировал /boot/efi, прибиндил нужное, чрутнулся, добавил GRUB_USE_LINUXEFI=«true» в /etc/default/grub, проверил, что /etc/crypttab впорядке, установил граб (grub-install ...)

Вообзще-то не забыл.

WitcherGeralt ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.