Re: Tripple boot Debian 12, Debian 13, openSUSE EFI
Richmond composed on 2025-09-17 23:09 (UTC+0100):
> Felix Miata writes:
>> Richmond composed on 2025-09-17 18:14 (UTC+0100):
>>> Why did this all go so wrong? Why would
>>> Debian 13 boot without displaying Grub, even though it had a timeout of
>>> 5 seconds?
>> Grub's upstream default changed to disabling os-prober, so 13's Grub doesn't look
>> for anything else, and since the new installation had only one kernel to offer,
>> there was no reason to assume other than the sole known kernel to boot. Change
>> /etc/default/grub to enable os-prober, and following next update of grub.cfg, you
>> should find 12, 13 and openSUSE in your 13 Grub menu.
> I didn't find a grub menu, and os-probe was running. It was all
> puzzling.
> I have two EFI System partitions so this must have been the cause of the
> problem. In the old days installation used to say "you already have
> grub, do you want to overwrite it?" or something like that but there was
> no such question. Immediately after the installation I did see a Debian
> 13 grub menu, but trying to fix Debian 12 caused it to vanish and never
> come back.
> So how is it that re-installing grub from the boot media rescued Debian
> 12, but re-installing grub from Debian 12 did not?
Without a lot more specifications than you have offered it's difficult to more
than suppose.
> At some point I did these commands which may have been a bad idea:
> sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian12
> sudo update-grub
Actually, that may be imperfectly fine, but it likely needs to be coupled with an
edit to /etc/default/grub to read GRUB_DISTRIBUTOR="debian12" to match what you
did there, so that with the next automatic grub update with a new kernel the
process doesn't switch it back to the plain debian default, where 13's boot files
probably now live. It's possible that the scripting in GRUB_DISTRIBUTOR= now,
which I don't know how to interpret, checks the ESP or somewhere else to see if
"debian" is not supposed to be employed for the current installation, which might
should somehow automatically follow after your
grub-install ... --bootloader-id=debian12.
>>From Debian 12 I see:
> /boot/efi/EFI# ls -l
> total 20
> drwx------ 2 root root 4096 Oct 31 2014 Boot
> drwx------ 2 root root 4096 Dec 28 2023 debian
> drwx------ 2 root root 4096 Sep 17 17:13 debian12
> drwx------ 3 root root 4096 Jul 6 2014 Dell
> drwx------ 4 root root 4096 Oct 31 2014 Microsoft
> The Opensuse one is:
> ls -l /mnt/EFI
> total 4
> drwxr-xr-x 2 root root 2048 Apr 7 2024 boot
> drwxr-xr-x 2 root root 2048 Apr 7 2024 opensuse
Without details of filesystem IDs and fstab content it's hard to do more than
suppose, based upon ESP timestamps, you have an ESP dedicated to openSUSE use last
year, and the another ESP shared by your Debians and Dell/Windows/newPC leftovers.
Using two ESPs, you're forced to either use the BIOS BBS hotkey to select ESP to
boot from, and/or have os-prober enabled somewhere for one OS to be able to boot
the others, and/or use a custom.cfg. Except for an occasional Grub test, I only
ever have one ESP per PC, regardless of disk count. And, I only keep one Grub both
installed and enabled, and use one custom.cfg via /etc/grub.d/07_custom on one of
the installations for booting all installed operating systems.
<https://forums.opensuse.org/t/how-to-have-a-custom-uefi-grub-menu-for-a-multiboot-system/133541>
is a 2018 post where I described in more detail how it worked here, and still does
today.
--
Evolution as taught in public schools is, like religion,
based on faith, not based on science.
Team OS/2 ** Reg. Linux User #211409 ** a11y rocks!
Felix Miata
Reply to: