Hey, folks.
I've just installed Slackware according to
this notes. My setup is elilo + full disk encryption (lvm on luks). What I did:
1. Created two partitions: 512M ESP Fat32 (/dev/sdb1) and 250G raw for LUKS (/dev/sdb2).
2. Created and opened luks.
3. Created physical, group and logical volumes (root, swap, home).
4. Installed Slackware and elilo with new efi record.
5. Without rebooting after installation was finished I chrooted and used
Code:
/usr/share/mkinitrd/mkinitrd_command_generator.sh -a '-o /boot/efi/EFI/Slackware/initrd.gz | tail -1 | sh
to create initrd.gz.
6. Checked if /boot/vmlinuz-generic-5.4.41 and /boot/efi/EFI/Slackware/vmlinuz are the same.
7. Just in case copied /boot/efi/EFI/Slackware/initrd.gz to /boot/initrd.gz
So my final config setup looks like this
Code:
cat /boot/efi/EFI/Slackware/elilo.conf
chooser=simple
delay=1
timeout=1
#
image=vmlinuz
label=vmlinuz
initrd=initrd.gz
read-only
append="root=/dev/mapper/luksvg-root vga=normal ro"
ls -l /boot/efi/EFI/Slackware
elilo.conf elilo.efi initrd.gz vmlinuz
Seems like everything is OK, but when I try to boot into installation
1. initrd.gz loads from /boot (not from /boot/efi/EFI/Slackware).
2. All modules loads without a problem (I see insmod /lib/modules/5.4.41/... on display).
3. Error
Code:
LUKS device /dev/sdb2 unavailable for unlocking!
...
No /sbin/init found on rootdev...
As far as I can tell this error caused by inability to decrypt /dev/sdb2 which is partition with luks+lvm.
My questions are:
1. Why loads /boot/initrd.gz when in elilo.conf I have initrd.gz not in /boot, but in elilo dir (/boot/efi/EFI/Slackware)?
2. Since initrd.gz in /boot and in /boot/efi/EFI/Slackware are the same and they have been created by mkinitrd_command_generator, why the problem with decryption appears?
3. How to fix it?