EDIT: So after all that, I was able to reinstall windows and download Macrium reflect + my backup. First time I tried to recover it, it failed for some reason, but the second time around I was able to restore it successfully. I’m now back where I started, thank you everyone!
I’m not done with Linux yet, but I think I’m going to try and run it in a good VM for the time being. When I’m done with classes, or when I get a separate device, I will give it another go.
Post 1: https://lemmy.ca/post/3709382
Post 2: https://lemmy.ca/post/3863438
Yesterday I could at least change the order in the BIOS to boot windows. Now I can’t even do that.
I think when reinstalling, I must have overwritten something (the EFI?). I saw some other people that had a very similar experience, and the advice was to reinstall Windows. I’m currently downloading Windows installation media on another computer and I’m going to try and reinstall windows now.
This just keeps getting worse and worse, and thank you for the help while I struggle through this.
If anyone has other tips, I’d appreciate it :)
This happens, because the stupid windows bootloader installs itself onto the same partition as the fedora bootloader instead of making it’s own. So when you reinstall fedora, the windows bootloader is deleted. Look up how to reinstall windows bootloader
On EFI systems all bootloaders are supposed to reside on a single partition. EFI does not support multiple ‘EFI system partitions’, so operating systems have to share a single one. And this is usually not a problem if it is the one Windows choose. The problem most often is broken EFI firmware which fails to correctly handle adding and removing boot entries. Or Windows, which fails to boot if anything changes (disk order and such), even though everything is still available.
This is technically only true if you have a single disk. The EFI spec allows for a single EFI partition per disk, so you can definitely have multiple in a system. I know this, because my setup has multiple EFI partitions. Windows doesn’t like it, and it will try it’s hardest to share a single one with Linux, but if it’s on its own disk, you can set it up with its own EFI partition using the command prompt.
This is exactly why I put my Linux install on a separate SSD. I even physically removed the windows SSD when I installed so nothing would get merged together.
Then my recent research was wrong - I tried to make it work and failed. Then read somewhere it is not supported. But it can be that it is valid EFI configuration, but not supported by Windows and some firmware implementations.
I don’t think I have ever seen an EFI firmware which was not broken in one way or another.
I’ve never had Windows mess up a UEFI partition worse than it was after the initial install. Microsoft may refuse to add a proper bootloader entry (defaulting to the fallback boot path) but it’ll leave Grub or any other bootloader alone unless you start messing with them.
I literally reinstalled Windows the other day and
systemd-boot
was still working, and so was Windows. This is all on a single disk.Ohh could you share how to do that? I resorted to removing the other drive physically
It was a couple months ago that I set this all up, but this is the article I followed IIRC: https://woshub.com/how-to-repair-deleted-efi-partition-in-windows-7/
That doesn’t matter, though. You can add a thousand bootloaders to a thousand disks. They just need to have a unique name. Windows installs itself to the UEFI “I don’t know what else to try, let’s boot this instead” bootloader which is rather silly, but Grub and systemd-boot don’t. They’ll just create their own little partition to chill out in.
If the entry was removed from the BIOS, the UEFI config probably got lost. There’s a good chance the bootloader is still installed on the disk but not listed as a notable option in the UEFI firmware variables.
You can fix this with efibootmgr or its Windows equivalent. I don’t know the exact commands, but I would go for the Windows version because it also sets a bunch of other environment variables when setting up the boot parameters.