Default GRUB boot entry not working.



What the heck is "atomic" distro lol
Why do people even bother with things that need special care especially if it's something non standard.
Atomic aka Immutable distributions, they're imaged based Linux distributions focused on a containerized workflows, but dual-booting with those doesn't seem to be very well supported as with the warnings that they have limitations when it comes to custom partitioning and dual-booting.
 
Been doing a bit of searching and try getting a vm to dual-boot a regular and atomic distribution, but couldn't get it to work. Seems the recommended way to dual-boot a regular distribution and an Atomic distribution is to use your UEFI menu which one you want to boot, which would mean you need need a separate efi partition for your Atomic install. This also the Bazzite documentation recommends.
Do you mean you are trying to add the other distribution's kernel entry in the same GRUB config of Fedora? I don't do that. I have separate bootloaders for Fedora Atomic and Arch Linux, and on separate EFI partitions.

So the easiest way to do that is just to use "one-time boot menu" each time and then select from there which one you want to boot. Not sure if "one-time boot menu" can be configure to always show up by default.
What is a "one-time boot menu"?? There seems to be so much confusion between us.
 
Do you mean you are trying to add the other distribution's kernel entry in the same GRUB config of Fedora? I don't do that. I have separate bootloaders for Fedora Atomic and Arch Linux, and on separate EFI partitions.
That's what I was testing with and from different posts and documentation I have read that's not going to work, but to have separate efi partitions and to have your uefi boot from there via "the one time boot menu".

What is a "one-time boot menu"?? There seems to be so much confusion between us.
I'm recommending what I've seen others do and what the Bazzite documentation recommends, one time boot menu is when you press F10 or F11 and you choose where you want to boot from.

https://www.asus.com/me-en/support/faq/1013017 -> Method1
So in short you you press a key you get an uefi menu and the select which partition you want to boot from.
 
That's what I was testing with and from different posts and documentation I have read that's not going to work, but to have separate efi partitions and to have your uefi boot from there via "the one time boot menu".


I'm recommending what I've seen others do and what the Bazzite documentation recommends, one time boot menu is when you press F10 or F11 and you choose where you want to boot from.

https://www.asus.com/me-en/support/faq/1013017 -> Method1
So in short you you press a key you get an uefi menu and the select which partition you want to boot from.
If you had read my posts correctly, this is what I have been doing. In my UEFI boot menu I get a list of the identified boot loaders. I can choose to boot Fedora's GRUB, Arch's systemd-boot, Arch's EFI stub that I configured, or Windows. I do not need a single bootloader to boot everything.

Let me be clear again, the problem is that GRUB is configured to load vmlinuz from /ostree (which has nothing to do with the /ostree you see after boot, it is actually mounted later from /sysroot/ostree), where it should load from /boot/ostree.

I don't know why this config was set. Maybe it is considering the boot partition to be a different physical partition and that partition be mounted as /boot rather than having an actual /boot directory. With such a setup, /ostree with relative to the boot partition resolves correctly. In my config, $root in GRUB is set to the main partition containing the Fedora installation. This way, /ostree doesn't make any sense. I can't even just mount /boot/ostree as /ostree because later /sysroot/ostree is mounted as /ostree by the system. It should have been either /boot/ostree or /boot being a different partition.
 
Not sure if "one-time boot menu" can be configure to always show up by default.

Not natively, IME (although there is possibly a way).

One option is to set the following in /etc/default/grub, then save and reboot.

Code:
GRUB_TIMEOUT=-1
GRUB_TIMEOUT_STYLE=menu

That will keep the Grub Menu open until you make your choice.

On

However maximum 1 EFI partition is allowed per disk.

Not so, IME, see below

and

I don't have a quote, but this super user question confirms that you need multiple disks if you want to have multiple ESP partitions (each disk its own):

No, it means that if you have 3 drives, you can have 3 ESPs, one on each.


Of the 3 drives I have in my rig's config, I have /dev/sdb (SSD) with 12 Linux Distros on it.

While I have them currently sharing one ESP (EFI System Partition), /dev/sdb1, I could have one for each Distro if I wished (but rather pointless). I have done it with two, but have not explored further.

HTH

Wizard
 
If you had read my posts correctly, this is what I have been doing. In my UEFI boot menu I get a list of the identified boot loaders.
Chill out, I've only been trying help you find a solution for your problem. Or else I wouldn't have spent time installing a dual-boot vm with Silverblue trying to working out something. People can misunderstand each other and when communicating solely through text things can go wrong on both the sending and receiving side as well other factors.

I don't know why this config was set. Maybe it is considering the boot partition to be a different physical partition and that partition be mounted as /boot rather than having an actual /boot directory. With such a setup, /ostree with relative to the boot partition resolves correctly. In my config, $root in GRUB is set to the main partition containing the Fedora installation. This way, /ostree doesn't make any sense. I can't even just mount /boot/ostree as /ostree because later /sysroot/ostree is mounted as /ostree by the system. It should have been either /boot/ostree or /boot being a different partition.
Maybe ask the Silverblue project?
My guess is has to do something bootc as when you check in /etc/fstab of Silverblue you see something mentioned about fedora-core and bootc.
 
Atomic aka Immutable distributions, they're imaged based Linux distributions focused on a containerized workflows, but dual-booting with those doesn't seem to be very well supported as with the warnings that they have limitations when it comes to custom partitioning and dual-booting.
Agreed.
The documentation makes it clear that it is not recommended to perform manual partitioning.
Allowing the partition manager to automatically partition the drive may (notice I said may) help however, if dual booting isn't well supported and there are limits this is a kettle of fish I believe would be best suited for a machine all of it's own.

Just my 2cents.
Alex
 
@CaffeineAddict @KGIII @Alexzee @piorunz @f33dm3bits
I forgot I have to ping users to get a reply. Read my previously reply.

I see the problem better now. My kernel is stored at /boot/ostree/fedora-<UUID>/vmlinuz-... $root in GRUB is set as (hd0,gpt7), so it tries to go to ostree relative to / and not /boot. grub.cfg and the loader entries live under /boot. The important part, I don't have a separate boot partition. /boot exists under gpt7, along with the directories like /sysroot. If I had a different boot partition, then $root in GRUB would point to that partition and now the ostree directory is directly reachable relatively.

But I am sure not creating a different boot partition should work. AI says this is a bug and should be reported.
One way to find out is try it.
Risky, I know but it's one way to learn when there is something worth keeping.

From reading the doc's I recall ostree has rule over the grub.cfg.

Trust me. I had to fight 3 ways to the sun to get Slackware partitioned correctly on this triple booted rig.
Boxing gloves off, fight over. Modicia, Debian Trixe and Slackware all appear it the bootloader menu.
 


Follow Linux.org

Staff online

Members online


Latest posts

Top