Drive not showing on BIOS Menu after Windows Update

Hello,

I have EndeavourOS on a HDD and Windows 11 on a NVME drive, as well as another SDD with data (mostly games I play on Windows). It’s been a while since I last ran EOS and noticed that after some Windows updates it seems the HDD where EOS is installed no longer appears on the BIOS Menu.

I can, however, access it via a Manjaro live USB I have around, going to the (list EFI partitions) option and selecting the EOS partition. It then redirects me to the usual screen where I can select EOS, EOS with limited drivers, and Windows Boot. I want to make that screen the default boot screen, where I can select which OS to start. I can only access EOS using that usb stick.

Most information I find online refers to grub, but I suspect I’m using systemd-boot instead. Anyways, even though I’m not sure what I’m doing, I have tried to following from what I could find online:

lsblk -o name,type,size,PTTYPE,FSTYPE
NAME        TYPE   SIZE PTTYPE FSTYPE
sda         disk 223,6G gpt    
├─sda1      part  1000M gpt    vfat
└─sda2      part 222,6G gpt    btrfs
sdb         disk 931,5G dos    
├─sdb1      part     1K dos    
└─sdb5      part 931,5G dos    ntfs
nvme0n1     disk 931,5G gpt    
├─nvme0n1p1 part   499M gpt    ntfs
├─nvme0n1p2 part   100M gpt    vfat
├─nvme0n1p3 part    16M gpt    
├─nvme0n1p4 part 930,2G gpt    ntfs
└─nvme0n1p5 part   740M gpt    ntfs
sudo dd bs=512 count=1 if=/dev/sdb 2>/dev/null | strings
t&fh
TCPAu2
r,fh
fSfSfUfh
Invalid partition table
Error loading operating system
Missing operating system

sudo dd bs=512 count=1 if=/dev/sdb1 2>/dev/null | strings
3WIu

sudo dd bs=512 count=1 if=/dev/sdb5 2>/dev/null | strings
NTFS    
fXfX
A disk read error occurred
NTLDR is missing
NTLDR is compressed
Press Ctrl+Alt+Del to restart
sudo efibootmgr
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0003,0000,0001,0002
Boot0000* Windows Boot Manager  HD(2,GPT,92d88728-8596-40ce-ad86-4154ef7a6f11,0xfa008,0x32008)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000074000100000010000000040000007fff0400
Boot0001* Windows Boot Manager  HD(1,GPT,c64eca12-108f-7849-b827-5c0344b0cf64,0x1000,0x1f4000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)0000424f
Boot0002  UEFI: KingstonDT 101 II 1.00  PciRoot(0x0)/Pci(0x1,0x2)/Pci(0x0,0x0)/USB(10,0)/USB(1,0)/CDROM(1,0x72e230,0x8000)0000424f
Boot0003* UEFI: KingstonDT 101 II 1.00, Partition 2     PciRoot(0x0)/Pci(0x1,0x2)/Pci(0x0,0x0)/USB(10,0)/USB(1,0)/HD(2,MBR,0x0,0x72e230,0x2000)0000424f

KingstonDT 101 is the usb stick with Manjaro that I used to boot.

lsblk -o NAME,PARTTYPE,MOUNTPOINT | grep -i "C12A7328-F81F-11D2-BA4B-00A0C93EC93B"
├─sda1      c12a7328-f81f-11d2-ba4b-00a0c93ec93b /efi
├─nvme0n1p2 c12a7328-f81f-11d2-ba4b-00a0c93ec93b 
sudo fdisk -l /dev/sdb
Disk /dev/sdb: 931,51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: ST1000DM003-1CH1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x170e7308

Device     Boot Start        End    Sectors   Size Id Type
/dev/sdb1       16065 1953520064 1953504000 931,5G  f W95 Ext'd (LBA)
/dev/sdb5       16128 1953520064 1953503937 931,5G  7 HPFS/NTFS/exFAT

Partition 1 does not start on physical sector boundary.

Installer log from live session: http://ix.io/4yvG
Hardware information: http://ix.io/4yvE
Boot log: http://ix.io/4yvF

Thanks for the help!

ABOUT THE SOLUTION

I was actually wrong about the driver where EOS is installed. It is sda, not sdb :man_facepalming:t2:

So I did:

fdisk -l /dev/sda #just to check if the Linux filesystem would appear in sda2
mount -o subol=@ /dev/sda2 /mnt
bootctl install #returned that it was added to the efi boot list

and it worked. The other commands gave me errors about /mount not existing.

Important to say for noobs like me: I did not find the SSD drive where EOS is installed on the boot order in the BIOS menu. Instead, I had to go to the boot submenu and change the BBS priority to put Linux Boot Manager before Windows.

Boot up on Arch Linux via USB drive.

# dhcpcd

# fdisk -l /dev/sda
Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: CT500MX500SSD1  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 7CB8E7BD-B03D-4494-BDE5-78AD4BC92D27

Device       Start       End   Sectors   Size Type
/dev/sda1     2048   1048575   1046528   511M EFI System
/dev/sda2  1050624 976773119 975722496 465.3G Linux filesystem

# mount -o subol=@ /dev/sda2 /mnt
# mount /dev/sda1 /mnt/boot
# arch-chroot /mount
# bootctl install
# exit
# reboot

After restart, I boot my systemd boot menu back!

This is referenced from https://bbs.archlinux.org/viewtopic.php?id=284948

1 Like

this is simple to understand :
windows now removed all entry from UEFI boot mgr that is not as windows
this point concerns efibootmgr , you have to add / recreate entry point , be careful with options

secure boot off , all disks on AHCI , etc …

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.