GRUB Not Detecting Windows 11 Install

Hi. I have two separate hard drives in my machine. One has an installation of Windows 11 and the second contains an installation of EndeavourOS. During the installation process for EndeavourOS, I opted to install GRUB on the drive that contains my EndeavourOS installation, with the intention of detecting the Windows install from EndeavourOS later. I have performed this task succesfully using Manjaro and Ubuntu recently, so I’m not sure what the issue is.

I start with sudo nano /etc/default/grub and uncommented GRUB_DISABLE_OS_PROBER=false. Then I run sudo grub-mkconfig -o /boot/grub/grub.cfg, but no Windows is detected. Here is the output for that command:

Generating grub configuration file ...
Found background: /usr/share/endeavouros/splash.png
Found linux image: /boot/vmlinuz-linux
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-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 ...
done

Here is my output for lsblk (nvme0n1 is the Windows drive):

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0 465.8G  0 disk 
└─sda1        8:1    0 465.8G  0 part /
sdb           8:16   0   4.5T  0 disk 
├─sdb1        8:17   0    16M  0 part 
└─sdb2        8:18   0   4.5T  0 part 
nvme0n1     259:0    0 465.8G  0 disk 
├─nvme0n1p1 259:6    0   499M  0 part 
├─nvme0n1p2 259:7    0   100M  0 part
├─nvme0n1p3 259:8    0    16M  0 part 
├─nvme0n1p4 259:9    0 464.5G  0 part 
└─nvme0n1p5 259:10   0   719M  0 part 

I’m not sure how to proceed. My intuition is that perhaps I should have installed GRUB on my Windows drive. I did try to reinstall and install GRUB this way, but the installation returned an error code. IIRC error code 1, failed to install GRUB (paraphrasing). The reason I think this is because I had folders for Manjaro and Ubuntu in ‘nvme0n1p2’. I have also tried mounting ‘nvme0n1p2’ first and then running the mkconfig command, but the result is the same.

I appreciate anyone taking the time to review this.

can we see the output of sudo parted -l

One thing that can cause this is one install is UEFI and the other is legacy.

I think you have to set OS prober to true.

No. It is properly set.

It is even showing up in the output.

1 Like

Or the output of lsblk -l would help as well.

But I’m assuming his Linux partitions might be set up as BIOS not UEFI. But his Win11 partitions seem to be setup as UEFI.

sudo parted -l output:

Model: ATA CT500MX500SSD1 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags: 

Number  Start   End    Size   Type     File system  Flags
 1      1049kB  500GB  500GB  primary  ext4         boot


Model: ATA TOSHIBA HDWE150 (scsi)
Disk /dev/sdb: 5001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name                          Flags
 1      17.4kB  16.8MB  16.8MB               Microsoft reserved partition  msftres
 2      16.8MB  5001GB  5001GB  ntfs         Basic data partition          msftdata


Model: Samsung SSD 970 EVO Plus 500GB (nvme)
Disk /dev/nvme0n1: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size    File system  Name                          Flags
 1      1049kB  524MB  523MB   ntfs         Basic data partition          hidden, diag
 2      524MB   629MB  105MB   fat32        EFI system partition          boot, esp
 3      629MB   646MB  16.8MB               Microsoft reserved partition  msftres
 4      646MB   499GB  499GB   ntfs         Basic data partition          msftdata
 5      499GB   500GB  754MB   ntfs                                       hidden, diag

Here is the output of lsblk -l:

NAME      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda         8:0    0 465.8G  0 disk 
sda1        8:1    0 465.8G  0 part /
sdb         8:16   0   4.5T  0 disk 
sdb1        8:17   0    16M  0 part 
sdb2        8:18   0   4.5T  0 part 
nvme0n1   259:0    0 465.8G  0 disk 
nvme0n1p1 259:6    0   499M  0 part 
nvme0n1p2 259:7    0   100M  0 part 
nvme0n1p3 259:8    0    16M  0 part 
nvme0n1p4 259:9    0 464.5G  0 part 
nvme0n1p5 259:10   0   719M  0 part 

Yeah, assuming your Linux install is on /dev/sda, it looks like you did a legacy install.

If it is a new install, you might consider reinstalling in UEFI mode.

It is determined by how you boot the ISO. If you boot it in UEFI mode, you will get a UEFI install. You might need to use your BIOS boot menu to choose the UEFI option if your BIOS prioritizes legacy higher.

1 Like

Your assumption is correct, /dev/sda is my Linux install.

I see, I will review how I am booting from the install medium and try again. Thank you for the interim. Will mark as solved if my issue resolves itself!

1 Like

Out of curiousity, are you able to access your Windows 11 partitions from your Linux file manager? The reason I am asking is Microsoft with its fast boot option in Windows 10 sometimes messed with things partition related. I have not really played with Windows 11 to see if it has further security\conveniences.

Note, I did notice your feedback about the Manjaro install working (depending on how partitioning was set then).

I was able to access the partitions from within Linux (after mounting). I have secure boot disabled, and perhaps having it enabled is a requirement for fast boot? In any case, I am not using a fast boot option.

I’ve used multiple distros on this same setup and this is the first time I’ve had an issue. I’ve used Manjaro, Ubuntu and Pop!_OS (just remembered). It seems what dalto wrote was correct, I was somehow starting my installation USB in non-UEFI mode without being aware of it.

So it seems you were right, I must have been booting my USB in legacy mode.

In UEFI mode I had more options during the installation process and opted to use systemd-boot since this supposedly just autodetects Windows (which it did). Was able to boot from my EndeavourOS install drive and then select between EOS and Win11.

1 Like

Unless the specs changed, Windows 11 requires secure boot.

Source:

I only have 1 harddrive in my laptop, so makes you wonder what Windows is looking at when it boots. For the USB port, I know Thinkpads have a bios setting to enable UEFI support for USB ports. So I enable this when booting the EndeavourOS image when I run an install.

Isn’t that a requirement only for installing of / upgrading to Win. 11?
Afterwards, it could be disabled if I am not mistaken.

Yes you can…because all of my Windows 11 i have secure boot disabled. Otherwise i wouldn’t be able to install EndeavourOS. :wink:

Yeah, that’s what I thought too but not having had to deal with Win 11 I wasn’t 110% sure.
Only 100! :wink:
Thanks for the confirmation!

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