Есть ли способ kexec
перезагрузить работающее ядро без необходимости расшифровывать зашифрованную корневую файловую систему LUKS?
Я думаю, что нет, но не уверен, есть ли способ обойти эту проблему.
решение1
Если мой другой ответ по какой-то причине не соответствует вашим требованиям (например, потому что вы не хотите иметь ключевой файл на своем томе или он /boot
не зашифрован), я также могу порекомендовать этот проект:https://github.com/flowztul/keyexec
решение2
Поскольку grub2 поддерживает расшифровку томов, зашифрованных LUKS, я предполагаю, что ваш /boot
раздел также зашифрован. Это также препятствует некоторым злобным деваматаки.
Если это так, вы можете спокойно иметь ключ, который может расшифровать том внутри вашего initramfs. Теперь, когда kexec загрузит ваш initramfs в оперативную память, он сможет расшифровать ваш раздел при загрузке нового ядра.
Потому чтоэто руководстводля настройки ключевого файла luks внутри initramfs, что также решает проблему необходимости ввода ключевой фразы дважды (первый раз в grub, второй раз при загрузке initramfs).