LILO and nvmePosted: 2020-10-31
I 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
# 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 drive
max-partitions=7# Specify the manimum number of partitions
My Linux (I have
/ 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
# Windows bootable partition config begins other = /dev/nvme0n1p1 label = Win10 table = /dev/nvme0n1
lilo -v, LILO boots Windows just fine from the NVME.