Re: Cure found for kernel updates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On Wed, 14.05.14 16:16, Josh Boyer (jwboyer@xxxxxxxxxxxxxxxxx) wrote:

> On Wed, May 14, 2014 at 4:06 PM, Lennart Poettering
> <mzerqung@xxxxxxxxxxx> wrote:
> > On Wed, 14.05.14 20:39, Matthew Garrett (mjg59@xxxxxxxxxxxxx) wrote:
> >
> >> On Wed, May 14, 2014 at 10:27:36PM +0300, Elad Alfassa wrote:
> >> > On Wed, May 14, 2014 at 10:03 PM, Matthew Garrett <mjg59@xxxxxxxxxxxxx>wrote:
> >> > > Remove the requirement that the ESP be $BOOT. The downside of that is
> >> > > that we'll then have *yet another* partition (/boot, because we want
> >> > > kernels stored on a filesystem that supports xattrs, /boot/efi for the
> >> > > ESP, /boot/whatever for storing the config fragments) which isn't a huge
> >> > > issue for GPT but would be annoying with MBR.
> >> > >
> >> >
> >> > Can't we store those fragments in the same filesystem /boot is on?
> >>
> >> We can, but the spec requires that it be VFAT, and it's not reasonable
> >> for us to make /boot VFAT (no selinux labelling, for instance).
> >
> > Well, the entirety of /boot should get the same selinux label, which is
> > perfectly suppported by the vfat kernel support.
> >
> > It's just a question of whether /boot should be managed by RPM. I am
> > pretty sure it shouldn't. Instead the kernels should be placed somewhere
> > in /usr/lib, next to the kernel modules, and then only copied to /boot
> > when the initrd, and the drop-in is generated there, too. Or in other
> > words: initrd, kernel and initrd should always be placed there together,
> > or not at all, and be managed by the same kernel install script.
> 
> I'm confused.  That's what currently already happens.  It just happens
> to be that RPM is the mechanism for doing all the copying, not some
> other tool after the fact.
> 
> kernel RPM is installed -> %post calls kernel-install ->
> kernel-install calls dracut to generate the initramfs in /boot and
> then updates the bootloader config.
> 
> So which part of that are you objecting to?  The fact that RPM keeps
> track of it in the rpmdb, or?

No. I simply think it would be a better choice to make RPM install the
kernel into /usr/lib/, in some place that is near the kernel modules.

the kernel-install script should then do three things:

    1) copy the kernel from /usr/lib to /boot
    2) generate the initrd in /boot, from the modules and other stuff in /usr
    3) generate a BLS snippet in /boot, to bind initrd and kernel together

This nicely decouples the booting logic from the OS (which is then
/usr), and allows easily installing a boot loader on a local disk from a
shared NFS /usr, since all vendor bits always stay in a fully consistent
state in /usr. And /var, /etc, /boot are only secondary partitions with
local configuration, state and loader info. 

Currently, the script only does 2+3, but the kernel is directly
installed in /boot by RPM, which means sharing /usr always means /boot
needs also be shared. Wich sucks, since boot loaders tend to be something one
wants to keep more local, while /usr is something one would like to
share...

Hope that makes some sense...

(In the long run I want to come to a system where /usr is sufficient to
bring the system up, and /var, /etc, /boot can be flushed out if
necessary, and be fully reconstructed from /usr. I want this for user
appliances, and the same way as for OS containers)

Lennart

-- 
Lennart Poettering, Red Hat
-- 
desktop mailing list
desktop@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/desktop





[Index of Archives]     [Fedora Users]     [Fedora KDE]     [Fedora Announce]     [Fedora Docs]     [Fedora Config]     [PAM]     [Red Hat Development]     [Red Hat 9]     [Gimp]     [Yosemite News]

  Powered by Linux