On Feb 28, 2014, at 4:56 PM, Adam Williamson <awilliam(a)redhat.com> wrote:
On Fri, 2014-02-28 at 14:48 -0700, Kevin Fenzi wrote:
> * I don't know that there are any tech limitations for /boot not on
> lvm. But there's still an important case that needs it: encrypted /
There's some background at
https://bugzilla.redhat.com/show_bug.cgi?id=1036705 and related bugs. As
I understand it, dlehman's current position is that he doesn't believe
LVM devs, btrfs devs etc are sufficiently committed to supporting /boot
on those volumes that it is safe for anaconda to offer this choice. As
of right now, for grub2, anaconda does not allow /boot to be on anything
but a raw partition or a RAID device, and only allows the ext, xfs and
btrfs filesystems. /boot cannot be a btrfs *subvolume*, but it can be
raw partition formatted with the btrfs filesystem (I don't think you can
achieve this with the UI, though, so it's kickstart-only).
Re: btrfs devs are committed to supporting /boot on Btrfs for some time. It works now.
GRUB legacy has some minimal support (maybe it was just single device, not sure). GRUB2
supports booting any Btrfs volume including multiple devices, except profiles raid5/6.
Support includes lzo or zlib compression, multiple device single, raid0, raid1, raid10,
and even appears to tolerate degraded (multiple device with one device missing) volumes.
The problem with /boot on Btrfs looks to be exclusively a Fedora bug with grubby [1]. No
other distro I've tested has a problem with /boot on Btrfs except Fedora. Even three
year old Ubuntu with its old grub2 and ancient (in Btrfs terms) kernels can do this.
The summary of the cause is that grubby becomes confused about subvolumes, fails to update
grub.cfg, and therefore kernel updates, in effect, aren't usable. The work around is
to use grub2-mkconfig to write out a new grub.cfg - so obviously it's possible for
this to work.
As for LVM, GRUB2 finds /boot on a conventional LV, it doesn't on thinp LVs. I'm
not sure what the status of that works is, if there is even any planned, but it seems like
it'd need to come from the LVM folks to contribute to GRUB to make it happen.
As for md RAID, I've tested GRUB finding /boot on md linear, raid0, raid1, raid10,
raid5 and raid6 and it works up to the limit of the BIOS to present the minimum number of
disks. So if there are problems here I'm not sure where they area, maybe in the
initramfs?
GRUB2 has no issue finding /boot files on XFS. [2]
Chris Murphy
[1]
https://bugzilla.redhat.com/show_bug.cgi?id=864198
[2]
Although, XFS does not have a bootloader pad, unlike ext4. So there's no such thing as
embedding grub "to a partition" (into the VBR) if its XFS formatted. Anaconda
doesn't support this since newui anyway, so it shouldn't be a problem but there
are still some people who think this is a good idea and for them I say use extlinux and
ext4 which are designed for this use case.