I have Ubuntu 18.04.2 LTS and grub 2 installed which boots from a sata SSD drive. This a BIOS system, not UEFI.
I have restored Windows 10 to an nvme drive, and fixed its boot structure and drivers using my 'Macrium Reflect' rescue USB. The nvme drive boots fine in VirtualBox. So I believe the Windows 10 disk is correctly configured.
% lsblk -no name,serial,type,tran /dev/nvme0n1
nvme0n1 S466NX0KB54472K disk nvme
└─nvme0n1p1 part nvme
I want to use Grub 2 to be able to boot Windows 10 on this nvme drive.
Ubuntu can see my nvme drive perfectly well, and update-grub
finds the Windows 10 system. Here is the generated section of /boot/grub/grub.cfg
:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 10 (on /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-chain-4E76C42676C4111F' {
insmod part_msdos
insmod ntfs
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4E76C42676C4111F
else
search --no-floppy --fs-uuid --set=root 4E76C42676C4111F
fi
parttool ${root} hidden-
drivemap -s (hd0) ${root}
chainloader +1
}
However, when booting the Windows 10 Entry from grub, I get 4 errors:
error: no such devices 4E...111F
error: not a partition
error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120.
error: invalid signature
I guess that a nvme driver module is missing from initramfs
. Or that --set=root
needs a different specification.
Is that the case? If so, how do I get it into grub?
This seems like a bug to me...