On Thu, Sep 8, 2011 at 4:41 AM, Michał Górny <mgo...@gentoo.org> wrote:

>
> I'd rather say we should do the work on real issues rather than
> imaginate 'separate /usr' problem. Honestly, most of 'advantages' of
> separate /usr are just hacks avoiding other problems.
>
>
I guess the irony in my case was that having a separate /usr allowed me to
use raid5 without having an initramfs.  :)

It may have changed, but at least in the past you couldn't have root on a
raid5 without an initramfs - you definitely couldn't have it on LVM.  So, if
you wanted to run LVM on raid5, you had to have a separate root that was
raid1 with the older metadata that on-disk looks like a non-raid partition
superficially.

So, unless you want to waste half your diskspace you need to keep root
really small, since raid1 is a lot less space-efficient than raid5.  If you
want a small root you can't put /usr on it.

In any case, I think we need to pick our battles.  If every other distro
goes one way, then we need to consider whether being different is really
adding value, or if it is simply being different.

Most distros used an initramfs because they wanted to have one-size-fits-all
kernels.  Gentoo doesn't do it that way, and hasn't needed initramfs as much
as a result.  However, in the linux world initramfs has evolved from simply
being a way to modprobe the drivers needed to mount root to an extra
bootloader that allows for more complex partitioning schemes (btrfs, lvm,
raid, etc), disk encryption, and much smarter detection logic (mounting by
UUID and not by a device name that is not guaranteed to be stable).

I think the proposed direction is sensible.  If you have a monolithic kernel
and a separate /usr on an otherwise simple setup, then you'll probably just
need to emerge an extra package and cat some static file onto the end of
your kernel image, or reference it in your kernel config.  If you have a
complex system then you just run dracut and get automagic bootup logic.  If
you have /usr on root then you don't need to do anything.

The alternative is to spend huge amounts of time maintaining system packages
just so that we can be different.

Rich

Reply via email to