LILO and nvme
Posted: 2020-10-31 Filed under: system | Tags: bios, lilo, lilo.conf, nvme, partitions Leave a commentI recently upgraded to a 1 TB NVME drive and I have Windows 10 on it. The computer boots by default from another disk, a standard SSD, where Slackware -current is installed with LILO. The problem is that selecting Windows from LILO does not boot it. The screen just stays blank. If I specify in the BIOS that the NVME has boot priority, it boots fine.
So, Slackware is on /dev/sda
, while Windows on /dev/nvme0n1
. I searched quite a bit and finally found this blog post with some very useful comments. Apparently all I needed to do is add the following line in the beginning of /etc/lilo.conf
:
# LILO configuration file # generated by 'liloconfig' # # Start LILO global section boot = /dev/sda disk=/dev/nvme0n1 bios=0x80 max-partitions=7 # This option loads the kernel and initrd much faster: compact
bios = 0x80
# BIOS will see it as the first drivemax-partitions=7
# Specify the manimum number of partitionsMy Linux (I have /boot
on sda1
, while /
is on sda2
) and Windows (only one partition nvme0n1p1
) entries are as follows:
# Linux bootable partition config begins image = /boot/vmlinuz-generic-5.7.6 initrd = /boot/initrd-5.7.6.gz root = /dev/sda2 label = generic-5.7.6 read-only
and
# Windows bootable partition config begins other = /dev/nvme0n1p1 label = Win10 table = /dev/nvme0n1
After running lilo -v
, LILO boots Windows just fine from the NVME.