0

I installed Debian 11 on Samsung SSD 970 EVO Plus 1TB… everything worked as expected.

I disconnected (removed) NVMe from computer and booted to Tails using USB flash drive… everything worked as expected.

I disconnected (removed) Tails USB flash drive and connected (added) NVMe to computer and booted… “BootDevice Not Found” error was thrown.

BootDevice Not Found

Please install an operating system on your hard disk.

Hard Disk - (3F0)

F2 System Diagnostics

For more information, please visit www.hp.com/go/techcenter/startup

Running “Hard Drive Check“ / “Quick Test” in “System Diagnostics” reports following.

SMART Check : PASSED
Short DST : NOT AVAILABLE (1: NOT AVAILABLE)

Strangely, I can boot to Debian (using same NVMe) on another computer (in other words, disk is not defective).

What am I missing? Thanks for helping out!

10
  • 1
    Check this Q/A: unix.stackexchange.com/questions/565615/…
    – A.B
    Mar 19, 2022 at 16:03
  • Can you please expand on “Normally when the UEFI entry doesn't match, it would be purged from UEFI boot list”?
    – sunknudsen
    Mar 19, 2022 at 16:29
  • @A.B Does above theory explain why I can boot to that disk on another computer?
    – sunknudsen
    Mar 19, 2022 at 16:30
  • How can one recover from “it can choose to delete the entry” and how can one opt out from that? I use computer to run experiments so I wish to boot from many combinations of disks both internal and external.
    – sunknudsen
    Mar 19, 2022 at 16:40
  • What I really don’t get is why my ThinkPad X1 Yoga behaves differently for same version of Debian… I can swap NVMe disks without issues. Trying to understand what is happens from a deterministic point of view.
    – sunknudsen
    Mar 19, 2022 at 16:41

1 Answer 1

3

Thanks to A.B.’s help, I was able to recover. 🙌

Steps to recover from “BootDevice Not Found” (see docs)

Step 1: boot from debian-11.2.0-amd64-netinst.iso

Step 2: select “Advanced options…” and hit enter, then select “…Rescue mode” and hit enter, then select “English” and hit enter, then select “United States” and hit enter, then select “American English” and hit enter (or select another locale to your liking)

Step 3: when “Hostname” is displayed, hit enter, then when “Domain name” is displayed, hit enter

Step 4: when “Select your time zone” is displayed, hit enter (or select time zone to your liking)

Step 5: select device to use as root file system and hit enter (when using single NVMe disk, this is typically /dev/nvme0n1p2)

Step 6: when “Mount separate /boot/efi partition” is displayed, select “Yes” and hit enter

Step 7: select “Reinstall GRUB boot loader” and hit enter

Step 8: when “Device for boot loader installation” is displayed, enter device and hit enter (when using single NVMe disk, this is typically /dev/nvme0n1)

Step 9: select “Reboot the system”, remove USB flash drive and hit enter

Once recovery is done and one can boot to Debian, running echo "grub-efi-amd64 grub2/force_efi_extra_removable boolean true" | sudo debconf-set-selections prevents the issue from happening in the future.

10
  • Thanks for adding this… that part I don’t fully understand yet. I am still puzzled as to why same setup on my ThinkPad X1 Yoga works, but it doesn’t work on HP EliteDesk 800 G2 Mini.
    – sunknudsen
    Mar 19, 2022 at 17:31
  • Already on it 🤓
    – sunknudsen
    Mar 19, 2022 at 17:34
  • I updated answer with your feedback. It works! Now, why isn’t this the default?
    – sunknudsen
    Mar 19, 2022 at 17:40
  • 2
    It might overwrite Windows on dual boots. (same wiki page: "Note: The above command will permanently hijack the fallback bootloader, which might be undesirable in dual-boot setups.")
    – A.B
    Mar 19, 2022 at 17:43
  • And. ahem, the added part will prevent the issue only after the next time a grub package upgrade triggers reinstalling grub. It still has to be done once manually too.
    – A.B
    Mar 19, 2022 at 17:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .