Bug 54394 - grub-mkconfig некорректно определяет доступность раздела /boot на запись
Summary: grub-mkconfig некорректно определяет доступность раздела /boot на запись
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: grub-common (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Egor Ignatov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-05-21 12:26 MSK by Oleg Bulavsky
Modified: 2025-06-11 19:34 MSK (History)
6 users (show)

See Also:


Attachments
Патч для исправления генерации grub.cfg (352 bytes, patch)
2025-05-21 12:26 MSK, Oleg Bulavsky
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Oleg Bulavsky 2025-05-21 12:26:29 MSK
Created attachment 18518 [details]
Патч для исправления генерации grub.cfg

При создании конфигурационного файла для grub, для проверки, возможна ли запись переменных в /boot/grub/grubenv (для обеспечения функционала saved_entry/next_entry), grub-mkconfig использует для проверки доступности на запись из grub (на тему расположения на той или иной файловой системе или "абстракции") переменную GRUB_DEVICE.
GRUB_DEVICE в общем случае указывает на / , а на /boot указывает переменная GRUB_DEVICE_BOOT . В случае, когда /boot находится на отдельном разделе это очевидно разные значения.
В ситуациях, когда / располагается на файловой системе или менеджере томов, на которые grub не умеет писать (например btrfs или lvm), а /boot - на вполне себе "записываемой" (например ext2 на обычном разделе), grub-mkconfig некорректно (по / вместо /boot) определяет, что в /boot/grub/grubenv запись невозможна, и "отключает" в итоговом grub.cfg функционал save_entry/next_entry.

Как воспроизвести. При разбивке диска создать /boot на отдельном разделе диска с ФС ext2, а / создать на btrfs, zfs или любой ФС внутри тома lvm. Убедиться, что при генерации grub.cfg в функцию savedefalt будет подставлено "# GRUB lacks write support for XYZ" вместо ожидаемого функционала.
Comment 1 Oleg Bulavsky 2025-05-21 12:31:20 MSK
Приложенный патч необходимо применять к /usr/share/grub/grub-mkconfig_lib
Данный вариант сгенерирован в Simply 10.4, но к Simply 11 тоже подходит.
Comment 2 Repository Robot 2025-06-11 19:34:12 MSK
grub-2.12-alt13 -> sisyphus:

 Tue Jun 10 2025 Egor Ignatov <egori@altlinux> 2.12-alt13
 - fix search by uuid for legacy boot
 - fix zfs module (closes: #54480)
 - fix fs write support detection (closes: #54394)
 - update ALT-specific translations (closes: #54493)