I have a working Debian installation. It boots from /sda
using GRUB2, with the root partition on sda1
. Its a standard install, nothing strange.
I've added a 16GB mSATA device which appears as sdc
. I want to place the kernel and initrd here and boot from it, but keep the root on sda1
.
Installing GRUB into sdc
is not an issue. Having it properly find /boot
appears to be. After booting from this disk I end up in the GRUB rescue shell, with it unable to find /boot/grub/i386-pc/normal.mod
. This sequence of commands is enough to boot the system:
set root=hd2,1
set prefix=(hd2,1)/boot/grub
insmod normal
normal
Running set
alone indicates that the root
and prefix
are still set to hd0
. I do not know how to set those. The must be stored in the stage1 bootloader somewhere, but I don't see obvious options to any of the GRUB tools to set them.
Ideally, I'd be able to do this with some standard configuration so its safe against GRUB upgrades in the future.
sda
and use a script in the initrd to do a challenge/response sequence with a Yubikey, use those credentials to unlock the decryption key, and then mount thesda
with LUKS. I've got this bit all sorted out, its just the boot that's causing me problems.