LINUX.ORG.RU

grub2-mkconfig

 , ,


0

1

А научите меня готовить grub2-mkconfig в условиях корня на lvm.
Конфиг должен выглядеть как-то так:

insmod lvm
menuentry ...
    ...
    set root=(vg00-root)
    linux /boot/linux dolvm root=/dev/ram0 real_root=/dev/mapper/vg00-root ...
    initrd /boot/initramfs ...
Я прописал в /etc/default/grub:
GRUB_CMDLINE_LINUX_DEFAULT="dolvm root=/dev/ram0 real_root=/dev/mapper/vg00-root ..."
GRUB_PRELOAD_MODULES=lvm

В итоге сабж генерирует вот такой конфиг:

insmod lvm
menuentry ...
    ...
    set root='hd0,msdos1'
    linux /boot/linux ... dolvm root=/dev/ram0 real_root=/dev/mapper/vg00-root ...
    initrd /boot/initramfs ...

Никак не соображу что и куда прописать, чтобы оно правильно указывало set root.

★★★★★
Ответ на: комментарий от Deleted

initrd есть, без него с lvm проблематично грузиться.
Задача перелезть с grub-legacy на grub2, ибо «A newer version of GRUB (sys-boot/grub) is now stable» и все такое.
C grub-legacy всё сейчас работает, я пытаюсь сообразить как готовить конфиг grub2.

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

ибо «A newer version of GRUB (sys-boot/grub) is now stable»

A newer version of GRUB (sys-boot/grub) is now stable. There are now two available slots:

sys-boot/grub:0 - Known as "GRUB Legacy"
sys-boot/grub:2 - Known as "GRUB2"

Необходимость переползать-то чем обоснована?

Deleted
()

Я прописал в /etc/default/grub:
...

Оставьте так:

GRUB_CMDLINE_LINUX_DEFAULT="dolvm"
И выполните:
mount /boot
grub2-mkconfig > /boot/grub/grub.cfg
Всё, больше ничего не нужно.

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

Забавно. С set root, указывающим на физ. раздел, действительно работает. А в wiki пишут, что обязательно должно указывать на vg-lv.

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

Да при чем тут initrd, если тред про генератор конфига grub2?

А это не меня спрашивай.

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

Если у вас /boot на обычном разделе, то почему set root должен указывать на lvm ?

Ну и как я уже сказал вот это 'root=/dev/ram0 real_root=/dev/mapper/vg00-root ...' не нужно указывать в GRUB_CMDLINE_LINUX_DEFAULT, достаточно только 'dolvm', корень grub2-mkconfig должен определить сам.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)

А научите меня готовить grub2-mkconfig в условиях корня на lvm.

У меня под Gentoo всё почти дефолтовое. Только:

# grep -i lvm /etc/default/grub
GRUB_CMDLINE_LINUX="dolvm"
GRUB_PRELOAD_MODULES=lvm

KRoN73 ★★★★★
()

Не GRUB_CMDLINE_LINUX_DEFAULT, а GRUB_CMDLINE_LINUX.

Иначе у тебя recovery mode не будет работать, придется вручную дописывать параметры перед загрузкой.

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

Он у меня и так не работает (GRUB_DISABLE_RECOVERY=true).

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

A newer version of GRUB (sys-boot/grub) is now stable

я по этому поводу с LiLo на GRUB Legacy переполз. xD

а по сабжу: удосужься прочитать ссылки по переходу на сабж с легаси (я не читал, ибо мне не нужно). конфиги для примеров гуглятся.

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