Как вручную настроить grub на отдельном загрузочном разделе с LVM через полное шифрование диска LUKS?

Я установил Linux Mint 17.2, разделив жесткий диск следующим образом:

sdc1 - 100MB ext2 for boot
sdc2 - rest of disk as LUKS -> Physical Volume -> LVM Volume

логические тома являются:

/
/home
swap

установщик, казалось, работал правильно, за исключением того, что он не мог установить загрузчик, и я был вынужден выбрать опцию "установить загрузчик вручную позже".

у меня запущен LiveCD, открыт том LUKS и смонтирован корневой логический том в /mnt.

вопрос: как мне установить загрузчик?

большинство инструкций говорят что-то вроде:

# grub-install --root-directory=/mnt/ /dev/sdc

но это производит:

grub-probe: error: failed to get canonical path of `/cow'.
Installing for i386-pc platform.
grub-install.real: error: attempt to install to encrypted disk without cryptodisk enabled. Set `GRUB_ENABLE_CRYPTODISK=1' in file `/etc/default/grub'..

я отредактировал оба /etc/default/grub и /mnt/etc/default/grub и добавил GRUB_ENABLE_CRYPTODISK=1 для обоих, но ошибка все равно возникает.

каков правильный способ установить это так, что grub устанавливается на незашифрованном sdc1, запрашивает пароль, а затем загружает систему после разблокировки?

обновление

Grub загружается при загрузке, но он не запрашивает пароль или расшифровку должным образом. Добавив следующие параметры в /etc/default/grub Я могу сделать его запрашивать пароль, но он не будет расшифровывать, когда правильный пароль вводится:

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`    
GRUB_CMDLINE_LINUX_DEFAULT="cryptopts=target=lvmbase,source=/dev/disk/by-uuid/f7ddbdb6-51c3-4c59-9d1e-7751b0438431,lvm=vg0_root"
GRUB_CMDLINE_LINUX=""
5
задан N Rahl
16.01.2023 1:47 Количество просмотров материала 3663
Распечатать страницу

1 ответ

Я обычно выздоравливают grub внутри chroot. Итак, загрузитесь с живого дистрибутива И...

откройте том LUKS:

# cryprsetup open /dev/sdc2 luks-mint

активировать Тома LVM:

# vgscan
# vgchange -a y vg_mint
# lvscan

монтировать Монетный Двор и приготовьтесь к chroot:

# mount /dev/mapper/vg_mint-root /mnt
# mount /dev/sdc1 /mnt/boot
# mount --rbind /dev /mnt/dev
# mount --rbind /sys /mnt/sys
# mount -t proc none /mnt/proc

chroot в Монетный Двор:

# env -i HOME=/root TERM=$TERM chroot /mnt bash -l

настройка и установка grub, exit chroot:

(chroot)# grub2-mkconfig > /boot/grub2/grub.cfg
(chroot)# grub2-install /dev/sdc
(chroot)# exit

перезагрузка.

С. П.: заменить ВГ и НН имен соответственно.

P. P. P. S: я предположил, что Linux Minut использует grub2, если нет, удалите '2' из обоих grub команды.

1
отвечен petry 2023-01-17 09:35

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

bootloader
grub
linux
luks
lvm
Вверх