I’ve been running Windows 10 with Ubuntu in dual boot. Each system on it’s separated drive. On Samsung 250GB SSD, i have Windows system and on Samsung 1TB SSD i made 2 partitions (one for games running on windows and one for Linux as a whole) and installed Ubuntu on it’s partition. During installation, i chose semi-automatic installation where i could divide system partition from /home mount partition for easier distro hopping if needed.
Then i wanted to try Endeavour OS so i wiped Ubuntu system partition together with grub patition (around 600 MB in space) and i pretty much followed these steps with manually making the partitions. So the /boot/efi was mounted on its own (roughly) 500 MiB partition, then the root (/) mount with roughly 60 gigs, then the swap parition with the swap attribute and lastly the /home partition with around 150 gigs of space (already filled with some data from Ubuntu times).
But now i tried to boot into windows and was greeted with this image. There is pretty much zero chance of being something wiped because Windows system is located on different SSD drive (the Samsung 250Gig one).
Did someone have this issue? How did you fix it? Or maybe some ways to investigate what really happened? I would appreciate any help!
Looks like the entry in GRUB isn’t pointing at the right partition, and that in turn is giving you the recovery screen you’re seeing, which gives the impression that the Windows bootloader is broken.
You can try using “sudo update-grub” to update it, and see if that will change to the actual Windows bootloader?
Apparently, update-grub is meant for debian based distros. I tried @keescase 's step but the os-prober was disabled by default so i enabled it and try to re-run the grub-mkconfig command with this log:
Generating grub configuration file ...
Found background: /usr/share/endeavouros/splash.png
Found linux image: /boot/vmlinuz-linux
Found initrd image: /boot/initramfs-linux.img
Found fallback initrd image(s) in /boot: 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.
Found Windows 10 on /dev/sda1
Adding boot menu entry for UEFI Firmware Settings ...
done
It added another option to boot identical with one that already exists (the windows one visible in photo above). I even checked the entry but it looks identical to the default windows entry so it throw the same error.
Couldn’t this be caused by having windows on another drive? Like it might falsely think it found the right partition but in fact it is on other drive / other partition.
EDIT:
It seems like my Endeavour OS is not booted in UEFI mode (article), evidence:
~$ efibootmgr
EFI variables are not supported on this system.
Which means i somehow f’d up my partitioning while in manual installation.
Do as @keescase suggested and run the update grub command for arch but you have to enable os-prober first in /etc/default/grub by uncommenting the line.
Thank you, @keescase for promising solution. Unfortunately it wrote:
mount: /sys/firmware/efi/efivars/: must be superuser to use mount.
dmesg(1) may have more information after failed mount system call.
So i run it as root with log message:
mount: /sys/firmware/efi/efivars/: fsopen system call failed: Operácia nie je podporovaná.
dmesg(1) may have more information after failed mount system call.
The “Operácia nie je podporovaná.” means “Operation is not supported.” in english.
I already tried to grub update command before as you can see in my latest comment before this one.
Unfortunately, my issue is still not resolved but thank you all for trying to fix it with me! Appreciate it!
I your EOS installed in bios mode? Do you have secure boot and CSM disabled in the Bios. If CSM is enabled it can cause it to get installed in Bios mode if you don’t see the difference in the boot menu on the live ISO. It looks different when booting in UEFI as opposed to Bios mode.
Heck. I installed the BIOS version. I just noticed there were 2 options to boot the USB as. There was either the USB stick name or UEFI:{USB stick name}. I, of course, entered the only USB name option and installed the endeavour os. Which means I installed it in BIOS mode.
So does this mean I need to reinstall the system in UEFI mode or is there a data-preserving workaround?
that’s right. not a big problem to convert from legacy- to uefi -mode
e.g.:
creating an ESP
chrooting to system
installing grub-efi and efibootmgr
installing kernels and headers
My first guess, would be that your windows and ubuntu installation used a shared EFI partition and when you set up endeavouros you wiped that which would have deleted bootmgr which windows needs to boot.
You said it’s on separate drives and you used bios version so it gets murkier and the above probably isn’t what happened.
But ultimately, what you’re encountering now is a windows issue. Windows can’t boot.
The solution, is going to be htrough windows.
I recommend trying startup repair first. (That’s the recovery tools the message is telling you to use, try using a windows installation usb stick to run it)
Yes. u gotta fix windows the windows way, which tends to break linux, then fix linux without breaking windows again. That’s how u solve dual boot issues of this particular nature.