Re: Tripple boot Debian 12, Debian 13, openSUSE EFI
Felix Miata <mrmazda@earthlink.net> writes:
> 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
I have established that these two debian directories are identical. I
found a function in /etc/default/grub in both systems which I think
probably evaluated to 'debian'. I have now changed the one on debian 13
to 'debian13' but not yet re-installed grub as I am afraid that I will
end up with an unbootable debian12 again, so I will just wait until it
becomes necessary to update grub because of a patch.
Debian 12:
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
Debian 13:
#GRUB_DISTRIBUTOR=`( . /etc/os-release && echo ${NAME} )`
GRUB_DISTRIBUTOR=Debian13
Currently I am able to boot either from Debian 12's grub.
p.s. Call me old fashioned, but I have used ext4 on all my file
systems. :)
Thanks for everyone's replies.
Reply to: