LINUX.ORG.RU

Gentoo на btrfs over luks

 , ,


1

2

Доброго времени суток.

Пользуюсь Arch-ем на ssd>dm-crypt(luks)>btrfs>subvol (смонтировано /, включая boot). Грузит все это безобразие Grub2 с GRUB_ENABLE_CRYPTODISK=«y». Появилась необходимость поставить Gentoo. Развернут stage3-systemd на btrfs subvol gentoo. Ядро скомпилировано с нативной (не модульной) поддержкой зависимостей systemd, crypto api, FS и прочими прелестями (Gentoo Handbook + ЛОР). initramfs сгенерирован с помощью genkernel (--luks --btrfs --bootloader=grub2 --udev --kernel-config=/usr/src/linux/.config initramfs), и (ввиду полученной ошибки) Dracut. Ну и резервное ядро с genkernel.

В Grub2 добавлены:

menuentry
...
linux   /gentoo/boot/vmlinuz-4.12.4-gentoo rd.luks.uuid=UUID rd.luks.allow-discards rd.luks.crypttab=1 root=UUID=UUID init=/usr/lib/systemd/systemd rootflags=subvol=gentoo
initrd  /gentoo/boot/initramfs-4.12.4-dracut.img
...
menuentry
...
linux   /gentoo/boot/kernel-genkernel-x86_64-4.12.4-gentoo keymap=ru splash=silent quiet crypt_root=UUID=UUID dobtrfs rootflags=subvol=gentoo init=/usr/lib/systemd/systemd
initrd  /gentoo/boot/initramfs-genkernel-x86_64-4.12.4-gentoo

Суть в чем: ядро грузится. Запрашивает пароль раздела. Если ввести неверный - просит заново. Ввести верный = фриз.

ЧЯДНТ?

P.S. Параметры загрузки пробовал разные.

P.P.S. При переносе системы на нешифрованный раздел, все грузится и работает.


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

На Dracut-овском initramfs (когда оно вывалилось в shell из-за отсутствия ключа разблокировки, который я намеренно не указал). ФС монтируется через dm-crypt, файлы есть.

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

Мы говорим об абсолютно разных вещах. В моей конфигурации само ядро находится в LUKS-разделе. Stub такого не умеет.

А зачем? Засунь initramfs в ядро, подпиши своим ключом и используй SecureBoot. Зачем лишние прослойки.

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

В первом сообщении на этом сделал акцент. Все зависимости, разумеется, вкомпилированы. И эта же система при переносе на btrfs без luks - грузится и работает. Не открывается (в точнее открывается вечно) LUKS.

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

И GRUB2 - тоже выкинь. Собери кернел с таким mkinitcpio.conf

blitz@inode /etc % cat mkinitcpio.conf 
#     MODULES="piix ide_disk reiserfs"
MODULES="crc32 libcrc32c crc32c_generic crc32c-intel crc32-pclmul"

# HOOKS
HOOKS="base systemd autodetect modconf block filesystems keyboard sd-vconsole fsck sd-shutdown"

В данном случае, тебе должна быть интересна вот эта строка
HOOKS=«base systemd autodetect modconf block filesystems keyboard sd-vconsole fsck sd-shutdown»

Это во-первых, и самое главное - продемонстрируй, пожалуйста, вывод
# cat /ets/crypttab

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

Меня порой удивляет попытка людей обращать в свою веру :)

1. Проблема давно решена. Более того, в свободное время собрал свой initramfs. Вес 3мб, быстрый :)

2. Это gentoo, а не arch. Или ты предлагаешь mkinitcpio ставить?)

3. Причем тут вообще crypttab? Его нет, и не должно быть. Открытие контейнера и его монтирование происходит еще до этапа systemd/openrc.

VVL- ()