dracut/grubby fails to update grub.cfg

Chris Murphy lists at colorremedies.com
Tue Oct 21 01:24:59 UTC 2014


On Oct 20, 2014, at 5:56 PM, Stefan Huchler <stefan.huchler at mail.de> wrote:

> 
> Chris Murphy <lists at colorremedies.com> writes:
>> There should be packages somewhere on http://czarc.org but I'm not
>> sure where. If you can't find them lemme know and I'll go dig around.
> 
> thank you is that the file?
> http://czarc.org/fedora/repo/20/x86_64/grubby-8.35-4%2b.gc759.fc20.x86_64.rpm

I'm going to guess yes, but it's a guess.


> 
> 
>> /boot on Btrfs isn't a priority for Fedora. In fact, /boot on LVM
>> isn't either. And even things like rootfs on LVM integrated raid
>> (rather than on md raid) isn't even possible in the installer. Since
>> /boot on ext3/4 and XFS are working reliably, there just isn't a
>> perceived strong need to get /boot on Btrfs working better.
> 
> I think making one btrfs directly on the disk is a good idea, because I
> dont hhave to deal with aligning and such stuff btrfs takes care of that.

You shouldn't have to deal with alignment issues ever anymore with semi-recent tools. For several years, parted as started the first partition at LBA 2048 (1MB) and stops on 1MB boundaries by default. This properly aligns the partition, and all other Linux device mapper leveraging storage technologies including md and LVM will properly align as well as they communicate their configuration "upstream" so that automatic configuration happens subsequently.

Where you get bad results is with, e.g. a pre-existing legacy OS like Windows XP, where it's not aligned and any subsequent partition is also not aligned. In that case, even a Btrfs volume wouldn't be aligned.


> 
> 
>> The bug is in grubby, which is what's called from within kernel
>> packages to update bootloader configuration scripts: GRUB legacy,
>> GRUB2, syslinux, yaboot, and probably a bunch of other bootloaders are
>> all supported by grubby. It looks at the existing "old" kernel entry
>> to use as a guide for inserting a new entry for the new kernel. It
>> fails because it doesn't understand subvolumes.
> 
> ok interesting, thx for clearification.
> 
>> There is no grub-update or update-grub on Fedora or upstream. All it
>> does is call 'grub2-mkconfig -o /boot/grub2/grub.cfg' (on BIOS
>> systems, it's different on UEFI systems).
> 
> yes u are right, in the hurry I mixed up old wisdom with my new distro
> :)
> And btw UEFI sucks :)

Well it's certainly exceptionally f'n complicated in relation to the benefits we get. But whatever, that ship has sailed. We'll just have to see how it all plays out, but for now UEFI and Secure Boot are the way of the present, not just the future.
> 
> 
> 
>> The simplest solution for you is to create an ext4 volume, and copy
>> the contents of /boot there, and update fstab accordingly. Then grubby
>> will succeed updating grub.cfg.
> 
> I know you can create subvolumes under btrfs fs, but can u create ext4
> subvolumes under btrfs? I doubt that, I think u thought I had lvm or
> something between the harddisk and my btrfs volume, I dont have that,
> its just btrfs on sda nothing else :)

No I mean you create a new partition and format it ext4. I'm not sure how you have sda only formatted Btrfs without other partitions unless you have another drive attached, because UEFI requires an EFI system partition; so minimum to boot Linux on UEFI you need two partitions if you have one drive. For Btrfs you need three partitions because Btrfs doesn't support swapfiles. The officially supported layout for Btrfs on UEFI is: EFI System partition, /boot on ext4, Btrfs with root and home subvols mounted at / and /home respectively, and swap. That's four partitions.

> 
> 
>> Well, one could argue that multiple bootloader projects is really
>> stupid, that there should be some way for all distributions to agree
>> on how to boot a Linux system, and then have one bootloader that can
>> make this happen. But the fact is people disagree on such fundamental
>> things, and they go work on their own bootloaders. And even within
>> GRUB2 the distros don't agree, and they hack GRUB2 and make it rather
>> distinctly different so GRUB2 on Fedora isn't even the same thing as
>> on Ubuntu.
> 
> Ok I get taht u need some specialist bootloaders like ISOLINUX for lol
> ISOs :) I was pretty happy that mkconfig thing in fedora did handle my
> setup so well. Just stupid when fedora can handle it so good but a wire
> between the installer and this tool hinders it to work its silly :)

Well, it's sorta brain dead that all these bootloader fiefdoms at the *very least* can't agree on a single configuration file format, as if it's some sort of 3rd rail of politics or religious conversation at the dinner table. A common config file format alone would make things a whole lot simpler. As overly complicated as GRUB2 is, it reads at least three config file formats, grub legacy, grub2, and syslinux.


Chris Murphy



More information about the users mailing list