You have two boot menus, UEFI & grub. And then each install will have a grub menu.
Can get very confusing, quickly.
Do not share /home nor a /boot if you have it. That creates huge conflicts.
You can create a shared data partition for any data you want in all installs.
If installing Fedora or any distribution that uses LVM, best to have it entirely on its own drive.
If you only want Windows and Windows as default, you can quickly make that the default in UEFI.
sudo efibootmgr
sudo efibootmgr -o XXXX,YYYY
Where XXXX is Windows & another others you may want as secondary.
The sudo update grub only updates grub menu. And when multiple booting entry may change if new kernel installed. Or many sudo updates can be required in all the other distributions.
You can easily reset any install to be default boot, by totally reinstalling grub in that install. As long as correct ESP - efi system partition this works, but assumes many defaults.
sudo grub-install
Because everything with Ubuntu has a boot entry as “ubuntu” I like to change the name.
In /etc/default/grub you can change distributor.
My script for several grub updates includes this to comment out old distributor and add default, you can manually change it to anything you want when editing /etc/default/grub. And if you run the install grub after change, it creates a new UEFI entry also.
strg2=“GRUB_DISTRIBUTOR=”$SYSVER"
sed -i ‘/GRUB_DISTRIBUTOR=/ s/GRUB_DISTRIBUTOR=/#GRUB_DISTRIBUTOR=/’ /etc/default/grub
echo $strg2 >> $input
I turn off os-prober, and copy boot stanzas into 40_custom. Originally copied from a backup of grub.cfg, but Ubuntu has links to most current kernel. So you can boot to link which always boots newest kernel and all the grub updates or edits in 40_custom for other installs new kernel are eliminated. Or I use configfile to load other installs grubcfg or even its grub in the ESP.
Example of a 40_custom entry where partition uses label.
One thing to keep in mind - the default Windows EFI partition size is 100mb.
With many operating systems sticking their own bits into this small partition, it gets very crowded very quickly, and will ultimately fail when it runs out of space. Then you are truly stuffed! Make your EFI partition at least 500mb to be on the safe side.
It can be because if a user installs a version of Ubuntu and then a derivative which overwrites the EFI/ubuntu directory files, it will then be pointing to the new derivative installed rather than the previous. It’s a simple fix but most new users aren’t aware this will happen. You can obviously boot the new install and run grub-mkconfig to create a working grub menu for all installs.
You have been fortunate. Some Ubuntu installs now inform you of potential failures of the system with small EFI partitions, Kubuntu for one. It asks for an EFI partition size of 500mb.
While Windows used 100MB for years for the ESP - efi system partition, we have seen some newer Windows systems with larger ESP system.
My Dell Windows 11 laptop with Intel gen 11 has 200MB for the ESP and Kubuntu has not complained about installing into it.
Also still suggest larger ESP. The only time I used a smaller ESP on is a full install to a smaller flash drive that will only ever have one install. Sometimes extra space in ESP is useful when FAT32 required, like manual UEFI updates.
The separate boot partition of Fedora may be created by default in the new Fedora installer. As I recall from installing Fedora 42, I customized the partitioning and trashed the separate boot partition. That forced the boot folder to be on root partition.
So be careful when installing your Fedora again. (It will strictly enforce the separate boot partition IF you use LVM or encryption, or maybe even the default btrfs filesystem. I formatted root to ext4 before starting the install.)
Other comments:
I read that F43 wants (suggests?) a 2 GB boot partition if you need to use one.
Ubuntu might not boot Fedora from the os-prober entry. I tested this with Ubuntu 24.04 (you apparently have Ubuntu 22.04?) and it failed with “emergency mode”.
If standard Ubuntu install, it will not boot a Fedora LVM install by default as it does not have the LVM drivers in the desktop.
You can add LVM & encryption drivers & copy the Fedora boot stanza into 40_custom.
You may be able to grub configfile entry into Fedora’s ESP entry to boot it directly.
I have these in my 40_custom as examples (has my UUIDs or labels:
What I do to multiboot Fedora (and other Linux) from Ubuntu grub menu is not to try to boot them directly, but to use the chainloader command of grub to hand over the booting to the bootloader of the target OS via its ESP. This always works for me.
Note: chainloader will not work with secure boot enabled.
First of all I’d like to thank everybody for their helpful replies.
However, none of this solves the problem unfortunately. So let me clarify. EFI menu only has Fedora, Windows Bootmanager, and ubuntu [sic!], and no reference to Ubuntu /dev/sda10. Now, when the problem first occurred I tried to boot Ubuntu on sda10, but that just hung. So I deleted sda10, formatted as NTFS, did the same to sda9 (which originally had Ubuntu Unity), then made sda10 unallocated space and tried to re-install Ubuntu Mate. But the installer then insisted on over-installing sda8 (Ubuntu Workstation!). Aborted, formatted sda10 as ext4 and tried installing Mate again, with the same result. So then formatted sda10 as NTFS again and made sda9 unallocated space. Tried to install Unity there but same thing, installer insisted on over-installing onto sda8 again! So gave up on that and here I am. What I really want is just to clean up Grub so only the Windows Bootmanager entry is left. The real problem seems to be those five Ubuntu on sda10 entries. As they are not referenced in EFI menu and I thus can’t delete them there, I seem to be stuck.
I wonder if install grub followed by update-grub might do it perhaps?
Or maybe I’ll just try to clone all the Windows partitions to another temporarily empty drive then delete all partitions on sda and clone the Windows partitions back onto it, and then re-partition (and re-install Linux). Maybe fs-archiver could do the partition cloning? Or I have a clone and backup app on Windows, forget the name - best known one!
Anyway, for now I wouldn’t really anticipate any problems with re-installing Linux, nor with having Ubuntu and Fedora on the same drive - I have that on two other machines without problems, and this is a big 4TB drive so more than enough space, especially as I keep most of my data on a separate USB drive.
To use Grub, you’ll need a working Linux installation.
However, I get the impression that you want to start from scratch with just Windows?
Subsequently, add Ubuntu and other distros?
You are happy to experiment because you have other PCs?
are you using an auto install option that may choose an existing install. I have never trusted letting system auto choose. It really only works with empty drive or just Windows and allocated space to install into. Anything more complicated, should not use any auto install options.
If you choose manual install, you can choose which partition to install into.
@tea-for-one - I have a working Ubuntu Workstation on sda8 (as well as a working Fedora) installation still.
However, I cannot delete Ubuntu on sda10 as it isn’t listed in the EFI menu, and I need to get rid of all five of the ubuntu on sda10 grub boot menu entries.
Yes, ultimately I just want the Window Bootmenu entry left in Grub so I can do a clean re-install of the Linux systems.
I never use auto install. However, the attempted re-installs I referred to simply didn’t give any other option than to over-install sda8’s Ubuntu WS.
Something seems to have got very screwed up with the whole system really, hence I decided I’d want to get rid of all entries in the Grub Boot Menu except the Windows Bootmanager one and then do a clean re-install of Ubuntu etc.
The output below shows one disk with 5 systems including Windows 11.
You will see that there are two EFi partitions
nvme0n1p1 for Windows
nvme0n1p5 for Linux
Two ESPs on one disk is unusual, but it doesn’t seem to be a problem.
As far as I know, it’s not prohibited within the UEFI specification.
ubuntu@ubuntu:~$ lsblk -e 7 -o name,type,fstype,partlabel
NAME TYPE FSTYPE PARTLABEL
nvme0n1 disk
├─nvme0n1p1 part vfat ESP - Windows 11 only
├─nvme0n1p2 part Microsoft reserved partition
├─nvme0n1p3 part ntfs Windows 11
├─nvme0n1p4 part ntfs
├─nvme0n1p5 part vfat ESP - All Linux
├─nvme0n1p6 part ext4 Ubuntu 24.04
├─nvme0n1p7 part ext4 Lubuntu 24.10
├─nvme0n1p8 part ext4 Ubuntu 25.10
└─nvme0n1p9 part ext4 Peppermint OS
ubuntu@ubuntu:~$
Ubuntu 24.04 (nvme0n1p6) controls Grub - user choice
Grub can include or exclude Windows - again user choice
Windows can always be booted via PC boot menu (uefi)
I’ve not included Fedora because I have never used a rpm distro.
There are a few little tricks when setting this up but nothing really onerous.
You would have to start with a disk only containing Windows (BitLocker disabled) and free space created by Windows disk management tools.
@tea-for-one - Currently this is of zero interest to me, besides which I have run multi-boot systems for yonks. It’s merely that things got seriously messed up by Fedora’s new version of its Anaconda installer. What I need to do is get rid of the Grub Boot Menu entries relating to ubuntu on sda10, which does not exist any more. Anything beyond that is really of no consequence as it prevents re-installing anything.
If I understand your situation, you have Fedora, Windows and an Ubuntu install on sda8 so if you only want those entries and the default boot manager is Fedora, boot it and run the command below as root/sudo. If you have formatted sda10 which had an Ubuntu install, it obviously won’t be detected. Or have you done this already?
If you have os-prober on, it finds all installs and adds then to grub menu.
You can turn os-prober off and it will not add any entries (including Windows).
And then you can just add Windows to 40_custom and have one Ubuntu and Windows in grub menu.
All Ubuntu installs & some unofficial installs that use Ubuntu’s installer will have only one UEFI boot entry for “ubuntu”. That entry will refer to the ESP with a 3 line grub.cfg. The grub.cfg in ESP then uses configfile by UUID to find one Ubuntu install. That install then can boot other installs.
Two ESP on same drive can add confusion. Installer will not know which to use so that may be why it fails. I have multiple drives & Kubuntu’s installer (calamares) and it lets me select which ESP to use. Some nistalls require me to select an ESP, older installs withUbuntu installer seemed to auto find ESP and include it, an it often was not the ESP on the drive I wanted.
You can see the UEFI entries:
sudo efibootmgr
And the GUID/partuuid in the UEFI entry to find the ESP.
lsblk -e 7 -o name,fstype,size,fsused,label,partlabel,mountpoint,uuid,partuuicat /boot/efi/EFI/ubuntu/grub.cfgd
And then in the ESP, if in your install & mounted may have restrictions.
cat /boot/efi/EFI/ubuntu/grub.cfg
If not in your install it will be where mounted plus /EFI/ubuntu/grub.cfg