Public bug reported: 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 a Windows 10 system restored to an nvme drive on a pci-card. I can boot this windows-10 system in VirtualBox. 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 } blkid can report on the drive: % sudo blkid /dev/nvme0n1p1 /dev/nvme0n1p1: LABEL="OS" UUID="4E76C42676C4111F" TYPE="ntfs" PARTUUID="000131d8-01" However, when booting the Windows 10 Entry from grub, I get 4 errors: error: no such devices 4E76C42676C4111F error: not a partition error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120. error: invalid signature My belief is that if update-grub can create a grub menu entry. The devices referenced in that entry should be able to be found by the grub boot-loader runtime. I have _minimal_ expertise in grub2. I suggest either the grub menu entry has been incorrectly generated or interpreted, or perhaps the driver required to see the nvme drive is not available to the grub runtime. % lsb_release -rd Description: Ubuntu 18.04.2 LTS Release: 18.04 % apt-cache policy grub-pc grub-pc: Installed: 2.02-2ubuntu8.13 Candidate: 2.02-2ubuntu8.13 Version table: *** 2.02-2ubuntu8.13 500 500 http://archive.ubuntu.com/ubuntu bionic-proposed/main amd64 Packages 100 /var/lib/dpkg/status 2.02-2ubuntu8.12 500 500 http://au.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages 2.02-2ubuntu8 500 500 http://au.archive.ubuntu.com/ubuntu bionic/main amd64 Packages ** Affects: grub2 (Ubuntu) Importance: Undecided Status: New ** Summary changed: - grub2 update-grub detects Windows 10 on nvme drive, cannot boot generated entry + grub2 update-grub detects Windows 10 on nvme drive, cannot find device of generated entry ** Description changed: 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 a Windows 10 system restored to an nvme drive on a pci-card. I + can boot this windows-10 system in VirtualBox. 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 + 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 } lsblk can report on the drive: - % lsblk -no name,serial,type,tran /dev/nvme0n1 + % lsblk -no name,serial,type,tran /dev/nvme0n1 nvme0n1 S466NX0KB54472K disk nvme └─nvme0n1p1 part nvme - However, when booting the Windows 10 Entry from grub, I get 4 errors: error: no such devices 4E76C42676C4111F error: not a partition error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120. error: invalid signature - - My belief is that if update-grub can create a grub menu entry. The devices referenced in that entry should be able to be found by the grub boot-loader runtime. + My belief is that if update-grub can create a grub menu entry. The + devices referenced in that entry should be able to be found by the grub + boot-loader runtime. I have _minimal_ expertise in grub2. I suggest either the grub menu entry has been incorrectly generated or interpreted, or perhaps the driver required to see the nvme drive is not available to the grub runtime. - % lsb_release -rd Description: Ubuntu 18.04.2 LTS Release: 18.04 % apt-cache policy grub-pc grub-pc: - Installed: 2.02-2ubuntu8.13 - Candidate: 2.02-2ubuntu8.13 - Version table: - *** 2.02-2ubuntu8.13 500 - 500 http://archive.ubuntu.com/ubuntu bionic-proposed/main amd64 Packages - 100 /var/lib/dpkg/status - 2.02-2ubuntu8.12 500 - 500 http://au.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages - 2.02-2ubuntu8 500 - 500 http://au.archive.ubuntu.com/ubuntu bionic/main amd64 Packages + Installed: 2.02-2ubuntu8.13 + Candidate: 2.02-2ubuntu8.13 + Version table: + *** 2.02-2ubuntu8.13 500 + 500 http://archive.ubuntu.com/ubuntu bionic-proposed/main amd64 Packages + 100 /var/lib/dpkg/status + 2.02-2ubuntu8.12 500 + 500 http://au.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages + 2.02-2ubuntu8 500 + 500 http://au.archive.ubuntu.com/ubuntu bionic/main amd64 Packages ** Description changed: 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 a Windows 10 system restored to an nvme drive on a pci-card. I can boot this windows-10 system in VirtualBox. 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 } - lsblk can report on the drive: + blkid can report on the drive: - % lsblk -no name,serial,type,tran /dev/nvme0n1 - nvme0n1 S466NX0KB54472K disk nvme - └─nvme0n1p1 part nvme + % sudo blkid /dev/nvme0n1p1 + /dev/nvme0n1p1: LABEL="OS" UUID="4E76C42676C4111F" TYPE="ntfs" PARTUUID="000131d8-01" + However, when booting the Windows 10 Entry from grub, I get 4 errors: error: no such devices 4E76C42676C4111F error: not a partition error: device format "lvmid/ozz..." invalid must be (f|h)dN, with 0 <= N < 120. error: invalid signature My belief is that if update-grub can create a grub menu entry. The devices referenced in that entry should be able to be found by the grub boot-loader runtime. I have _minimal_ expertise in grub2. I suggest either the grub menu entry has been incorrectly generated or interpreted, or perhaps the driver required to see the nvme drive is not available to the grub runtime. % lsb_release -rd Description: Ubuntu 18.04.2 LTS Release: 18.04 % apt-cache policy grub-pc grub-pc: Installed: 2.02-2ubuntu8.13 Candidate: 2.02-2ubuntu8.13 Version table: *** 2.02-2ubuntu8.13 500 500 http://archive.ubuntu.com/ubuntu bionic-proposed/main amd64 Packages 100 /var/lib/dpkg/status 2.02-2ubuntu8.12 500 500 http://au.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages 2.02-2ubuntu8 500 500 http://au.archive.ubuntu.com/ubuntu bionic/main amd64 Packages -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1822892 Title: grub2 update-grub detects Windows 10 on nvme drive, cannot find device of generated entry To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1822892/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs