Re: Fedora 30, BootLoaderSpec and generating entries under /boot/loader/entries

2019-05-27 Thread Chris Murphy
On Wed, May 22, 2019 at 11:16 AM Kevin Wilson  wrote:
>
> Hi all,
>
> I had installed Fedora 30,  on a dual boot machine which has a second
> partition with Fedora 28.
> Fedora 30  comes by default with a new boot loader spec.
>
> I found under /boot/loader/entries/ the following:
>
> ls /boot/loader/entries/
>
> ec1b8b7719964c8b9a1d8db430c63fd6-0-rescue.conf
> ec1b8b7719964c8b9a1d8db430c63fd6-5.0.9-301.fc30.x86_64.conf0
>
> I want to be able to boot by default into Fedora 28.

There are a couple of ways to do this. I have't tested any of them, so
I'm not sure which is the most reliable. On Fedora 28 do you have
/usr/sbin/grub2-switch-to-blscfg ?

If so, one option is to convert Fedora 28 to use BLS - and then it's
possible for Fedora 28 and Fedora 30 to share a single /boot where all
the kernels and drop-in bootloader .conf files go. The one tricky
thing is, if this is UEFI, we would probably want to make sure Fedora
28 /etc/fstab does not mount the EFI System partition on /boot/efi
because we'll want to prevent the older Fedora 28 EFI bootloader
packages from overwriting the contents of the EFI system partition.
It's fine for the packages to get installed on Fedora 28 though.

Another strategy is to edit the Fedora 30 grub.cfg (strictly speaking
should using either /etc/grub.d/40_custom or /etc/grub.d/41_custom) so
that there is a single "forwarding" entry to Fedora 28's grub menu.
That menu entry uses the GRUB 'configfile' command and points to the
Fedora 28 grub.cfg. Now Fedora 28 goes on updating its grub.cfg
normally.

It should be possible to give this forwarding menu entry a proper
title that can be set as the saved_entry in the grubenv so that GRUB
will use it by default. I know, it seems a little bit Rube Goldberg
but at least it'd all be self-describing.

Thing is, each strategy does differ on the details depending on
firmware type: BIOS or UEFI. On BIOS, the grub.cfg is self contained
in the /boot for that particular version of Fedora. Whereas with UEFI,
the grub.cfg goes on /boot/efi/EFI/fedora/ no matter the Fedora
version, which happens to be on the EFI system partition. So out of
the box, two Fedora bootloaders cannot co-exist on UEFI, F28 will
always try to step on the grub.cfg there, where F30 never updates it.
I'm also not really sure that Fedora 28's GRUB blscfg.mod is getting
all the latest updates and bug fixes. It's going EOL in 5 days.


>
> Is there a way by some utility to generate entries under
> /boot/loader/entries/ for the
> Fedora 28  and choose Fedora 28 as the default ?

Dual Fedoras has never exactly been easy. It requires some esoteric
knowledge of GRUB as well as update and upgrade handling to know the
path of least resistance.

(I say that from a system with six or seven Fedoras on a single Btrfs
volume, each in their own subvolume, and if i want to flip to one of
the others, I just hand edit the menu entry changin the
'rootflags=subvol=root30' to use root29 or root28 or rootraw or
whatever. The gotcha of course is those roots don't necessarily have
matching kernel modules for the /boot kernel + initramfs. Since I'm
using Fedora 30 95% of the time, I just manually 'cp -a --reflink'
copy the latest modules from F30 to the proper location in the rootX
subvolume for the Fedora version I want to boot.)

The nice thing about BLS going forward is with minimal effort it is
possible for Fedora 29, 30, 31 to share a single /boot, they all drop
their kernels, initramfs, and matching bls snippets there, and they
all appear in the same GRUB menu. The one thing to change is
/etc/fstab so older Fedora's doing GRUB updates don't overwrite
/boot/efi/EFI/fedora with old bootloader binaries (not really the end
of the world if it did happen I guess).


> Or should I disable the boot loader spec in order to boot to Fedora 28
> on this machine ?

I'm not sure that really helps get you closer to what you want. Anyway
it's best if you tell us what your plan is for Fedora 28 going EOL
this week. Are you making Fedora 30 primary in the near future? Or are
you going to upgrade the Fedora 28 installation to Fedora 29? That
sorta matters strategy wise. Maybe.



-- 
Chris Murphy
___
users mailing list -- users@lists.fedoraproject.org
To unsubscribe send an email to users-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org


Re: Fedora 30, BootLoaderSpec and generating entries under /boot/loader/entries

2019-05-23 Thread ja
On Wed, 2019-05-22 at 20:00 +0100, ja wrote:
> On Wed, 2019-05-22 at 20:16 +0300, Kevin Wilson wrote:
> > Hi all,
> > 
> > I had installed Fedora 30,  on a dual boot machine which has a second
> > partition with Fedora 28.
> > Fedora 30  comes by default with a new boot loader spec.
> > 
> > I found under /boot/loader/entries/ the following:
> > 
> > ls /boot/loader/entries/
> > 
> > ec1b8b7719964c8b9a1d8db430c63fd6-0-rescue.conf
> > ec1b8b7719964c8b9a1d8db430c63fd6-5.0.9-301.fc30.x86_64.conf0
> > 
> > I want to be able to boot by default into Fedora 28.
> > 
> > Is there a way by some utility to generate entries under
> > /boot/loader/entries/ for the
> > Fedora 28  and choose Fedora 28 as the default ?
> > 
> > Or should I disable the boot loader spec in order to boot to Fedora 28
> > on this machine ?
> > 
> > Regards,
> > Kevin
> > 
> 
> I have had exactly this problem
> I have made some notes - attached
> 
> This is vital reading
> https://www.freedesktop.org/wiki/Specifications/BootLoaderSpec/
> 
> If they help or if you have a better insight than me
> please let me know!
> 
The reason I investigated this was that during installation of F30
no additional entries were generated for other partitions - by grub2-mkconfig.
I added my comments to
https://bugzilla.redhat.com/show_bug.cgi?id=1600778
Many subsequent attempts to use grub2-mkconfig failed to add
extra options.
The grub.cfg and associated files successfully boot F30.

During investigation of this I found the following that may be useful.
I do not understand the significance!

When grub2-mkconfig is run os-prober seems to create entries of the form
[root@naxos:/boot/efi/EFI/fedora]$ dmsetup ls 
osprober-linux-nvme0n1p7(253:2)
These entries seem to stop the mounting of the partitions
[root@naxos:~]$ blkid -c /dev/null  shows them as
/dev/mapper/osprober-linux-nvme0n1p7: LABEL="naxos7_F29" 
UUID="1a9ccef1-af1c-4c26-8e4d-64a25bc56fcc"
TYPE="ext4"
These entries can be "removed" and hence the partition "mounted" by using 
dmsetup remove /dev/mapper/osprober-linux-nvme0n1p7





___
users mailing list -- users@lists.fedoraproject.org
To unsubscribe send an email to users-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org


Re: Fedora 30, BootLoaderSpec and generating entries under /boot/loader/entries

2019-05-22 Thread ja
On Wed, 2019-05-22 at 20:16 +0300, Kevin Wilson wrote:
> Hi all,
> 
> I had installed Fedora 30,  on a dual boot machine which has a second
> partition with Fedora 28.
> Fedora 30  comes by default with a new boot loader spec.
> 
> I found under /boot/loader/entries/ the following:
> 
> ls /boot/loader/entries/
> 
> ec1b8b7719964c8b9a1d8db430c63fd6-0-rescue.conf
> ec1b8b7719964c8b9a1d8db430c63fd6-5.0.9-301.fc30.x86_64.conf0
> 
> I want to be able to boot by default into Fedora 28.
> 
> Is there a way by some utility to generate entries under
> /boot/loader/entries/ for the
> Fedora 28  and choose Fedora 28 as the default ?
> 
> Or should I disable the boot loader spec in order to boot to Fedora 28
> on this machine ?
> 
> Regards,
> Kevin
> 

I have had exactly this problem
I have made some notes - attached

This is vital reading
https://www.freedesktop.org/wiki/Specifications/BootLoaderSpec/

If they help or if you have a better insight than me
please let me know!



print.pdf
Description: Adobe PDF document
___
users mailing list -- users@lists.fedoraproject.org
To unsubscribe send an email to users-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org


Fedora 30, BootLoaderSpec and generating entries under /boot/loader/entries

2019-05-22 Thread Kevin Wilson
Hi all,

I had installed Fedora 30,  on a dual boot machine which has a second
partition with Fedora 28.
Fedora 30  comes by default with a new boot loader spec.

I found under /boot/loader/entries/ the following:

ls /boot/loader/entries/

ec1b8b7719964c8b9a1d8db430c63fd6-0-rescue.conf
ec1b8b7719964c8b9a1d8db430c63fd6-5.0.9-301.fc30.x86_64.conf0

I want to be able to boot by default into Fedora 28.

Is there a way by some utility to generate entries under
/boot/loader/entries/ for the
Fedora 28  and choose Fedora 28 as the default ?

Or should I disable the boot loader spec in order to boot to Fedora 28
on this machine ?

Regards,
Kevin
___
users mailing list -- users@lists.fedoraproject.org
To unsubscribe send an email to users-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org