I have a fully-updated KDE system on an NVME drive.
Back-story: The system had been stable for a long time. It’s a simple setup that includes an 11th-gen Intel processor, only one NVME drive (Samsung 970) and one graphics card. I swapped in a new graphics card (3080) without changing anything else, and it would no longer boot. Returning to the old graphics card (1070) did nothing, so that might have been unrelated, but the swap remains a point of suspicion.
The UEFI BIOS utility shows the NVME drive installed. However, the BIOS’s boot menu does not show the NVME drive as an available option.
I put in a fresh Manjaro/KDE install disk and booted to that just fine. I can chroot to the old system without problems, and the drive seems fine. Grub is installed, and I verified that the system is up to date.
As root after chroot: “update-grub” and similarly “grub-mkconfig -o /boot/grub/grub.cfg” appears to do its thing, but with an “unknown device type” warning for the nvme drive (I have seen this error before and have always just ignored it):
[manjaro /]# sudo update-grub
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-5.15-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.15-x86_64.img
Found initrd fallback image: /boot/initramfs-5.15-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.10-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.10-x86_64.img
Found initrd fallback image: /boot/initramfs-5.10-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.4-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.4-x86_64.img
Found initrd fallback image: /boot/initramfs-5.4-x86_64-fallback.img
Found linux image: /boot/vmlinuz-4.19-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
Found initrd fallback image: /boot/initramfs-4.19-x86_64-fallback.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Adding boot menu entry for UEFI Firmware Settings ...
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
done
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck
Installing for x86_64-efi platform.
grub-install: error: failed to get canonical path of `/boot/efi'.
also, ls /boot/efi shows no such file or directory (if that’s helpful).
Yes, that was bothering me, as it looked wrong. I have no idea “why” or where EPS/EFI is.
Again, this system was perfectly fine until I swapped graphics cards (physically swapped them only, no software installations). However, I fail to understand how that could cause any changes to the system software.
You can try the above steps again, but when it comes to re-installing Grub, there’s the option to manually specify it as MBR:
grub-install --target=i386-pc /dev/nvme0n1
To be honest, I never tried this on an NVMe. It might give you issues.
I’m not even sure if you used to have an ESP, and it got deleted. Or if perhaps you were using legacy boot this entire time, but disabled it by mistake in your BIOS options.
EDIT: By the way, encapsulate your commands/output within three tildas above and below the text.
That command didn’t seem to improve anything, or to change anything as far as I could tell.
I don’t know what the source of the problem is, or why everything was fine up until this particular point. I didn’t change “legacy boot” in the bios recently, if ever. I don’t believe I’ve seen “DOS” in the lsblk output before, though.
I don’t know how to proceed. I could do something drastic like reinstall, but I’d rather not, especially without knowing what the problem is or how it came to be.
Very odd: It works fine now! I had built a duplicate user on a second drive, but didn’t mess with anything else (it still wasn’t working after I set all that up). I couldn’t even find “legacy boot” in my BIOS utility, at least not in the boot section. But today it’s working!
However, “dos” still appears in the lsblk output, compared with “gpt” on the new drive.
I’m not sure what to make of it. It repeatedly failed to boot without any changes, and it appears to now work again as if nothing had happened, also without any pertinent changes. I also don’t understand the “dos” issue.
I used clamav with nothing found (may not be using it right).
I checked the SMART status of the drive with no errors found.
Is there anything anyone would suggest at this point?