Flubbed dual boot with Zorin 16 > How to fix/reinstall without making things worse

I recently upgraded from Zorin Core 12 (yes, I know) to Core 16 as a dual-boot with Windows 10. The upgrade itself went fine, but things went wrong when I tried to reinstall a driver and instead of disabling secure boot switched from UEFI to Legacy BIOS boot mode. Got it switched back, but at that point, Zorin seemed gone. The computer automatically booted into Windows. I followed the advice here: partition - Zorin/Windows 7 Dual Boot on New Hard Drive, no GRUB! - Unix & Linux Stack Exchange (in short, remade the bootstick, created a mountpoint, mounted system on mountpoint, change root, reboot)

That also kind of worked, in that there were now three boot options in BIOS:

  1. Windows Boot Manager (HFS256G39TND-N210A)
  2. Windows Boot Manager
  3. Windows Boot Manager

Switched generic #2 to load first and that did load into Zorin, but... still no dual option at startup. Ran a grub recovery tool, and when the system restarted it only wants to boot Windows again. There are only two boot options this time around,

  1. Windows Boot Manager (HFS256G39TND-N210A)
  2. Windows Boot Manager

and this time switching the boot order didn't have an effect. The system still booted into Windows.

I'm a complete newbie in over my head and quite frankly am wondering if it's even possible to fix at this point. Even if it's a wash, I'm concerned something happened with the partitions that would make a 'clean' reinstall a disaster. I've attached a screenshot of the partitions as they are now, but I'm not sure where to go from here.

Any advice would be appreciated, but please keep in mind that when I say 'newbie', I mean 'never touched a terminal before Zorin two years ago/ 2-3 steps above your computer-illiterate relative who uses you for tech support' newbie. I can follow directions, but may ask for clarification/definition on 'basic' things.

Restored post.

When you say "Upgraded," Do you mean that you Installed Zorin OS 16?

Yes, to clarify I did a clean install following the instructions on the Zorin website by removing 12 & installing 16 via USB bootstick.

1 Like

I see two EFI partitions in your screenshot. One is about 512megs (normal) and one is about 100 megs (also normal, but a bit small). You should have only one EFI partition.
Have you tried Boot Repair for Zorin OS?

I used the Boot Repair when the system was only loading into Zorin. When the Boot Repair finished & restarted is when the system went back to only booting into Windows. I don't know if this helps, but I found two screenshots from after the initial crash, but before remaking the bootstick/mount point. It looks like there were two EFI files at that point as well. The new mountpoint was on SDA.


This was similarly discussed here:

Which links to:

Did you install Linux in the 1TB disk and Windows in the 256 GB disk?
Do you have a Windows bootable USB lying around? Why do you have 2 EFI partitions?

Yes, I would say one of those needs to go. Need to first figure out which Windows is using...
Who knows Windows really well around here?

I know how to identify using CMD.

Linux was installed in Disk 0/ the 1TB disk. I don't have a Windows bootable USB. As far as the two EFI partitions... it's sounding like that's the issue. I can only guess how two wound up there. Maybe the 'clean' install was not as clean as I thought? But nevertheless, it sounds like one needs to go.

I know how to identify using CMD.

What steps should I take in determining which EFI file gets to boot and which one gets the boot?

I can't tell you that but I can help you to identify which EFI has Windows and which one has Linux in it.
Following commands to be run using Command Prompt or Powershell (Admin privileges may be required):

diskpart
list disk
select disk x
list vol

Next you will need to select the Volume which is the EFI partition.
It is usually the FAT partition.

select volume x

Next you will need to assign a letter to it if it didn't have one already.

assign letter=Q

Exit Diskpart using:

exit

Now access the EFI Partition:

Q:
dir
cd EFI

again

dir

If you see Microsoft here then Windows bootloader is located here. otherwise it is in the EFI parttiion of the other disk. You can check it using the same method by following the same steps but when you get to the "select disk" step, select the other one (the one which you hadn't selected earlier. And when you "assign letter", assign a letter different that what you assigned to the other EFI partition.