On 01/29/2019 12:33 PM, Rich Freeman wrote:
If all my boxes could function reliably without an initramfs I probably
would do it that way.
;-)
However, as soon as you throw so much as a second hard drive in a system
that becomes unreliable.
I disagree.
I've been reliably booting and running systems with multiple drives for
almost two decades. Including various combinations of PATA, SATA, SCSI,
USB, SAN, drives.
Mounting the root based on UUID (or labels) is *WONDERFUL*. It makes
the system MUCH MORE resilient. Even if a device somehow gets inserted
before your root device in the /dev/sd* order.
I'm not saying you can't use linux without an initramfs. I'm just
questioning why most normal people would want to. I bet that 98% of
people who use Linux run an initramfs, and there is a reason for that...
I don't doubt your numbers.
But I do question the viability of them. How many people that are
running Linux even know that they have an option?
I suspect the answer to that question is less extreme than you are
wanting. I also suspect that it's more in your favor than I want. But
70 / 30 (I pulled those from you know where) is significantly different
than 98 / 2.
A lot of that is situational. If you have a kernel without btrfs support,
and you build btrfs as a module and switch your root filesystem to btrfs,
then obviously you'll need to rebuild your initramfs since the one you
have can't do btrfs. But, most people would just rebuild their initramfs
anytime they rebuild a kernel just to be safe. If you added btrfs support
to the kernel (built-in) then it is more of a toss-up, though in the case
of btrfs specifically you might still need to regenerate the initramfs
to add the btrfs userspace tools to it if you didn't already have them
in /usr when you generated it the first time.
But, if you're running btrfs you're probably forced to use an initramfs
in any case.
That's one of many reasons that I'm not using btrfs.
In any case, it isn't some kind of automatic thing. Just as some things
require rebuilding a kernel, some things require rebuilding an initramfs.
I just find it simplest to build an initramfs anytime I build a kernel,
and use the make install naming convention so that grub-mkconfig just
does its thing automatically.
Simplicity is completely independent of necessity.
You have made a choice. That's your choice to make.
IMO Dracut is one of the most robust solutions for these sorts of
situations. It is highly modular, easy to extend, and it really tries
hard to respect your existing config in /etc. In fact, not only does
it put a copy of fstab in the initramfs to help it find your root, but
after it mounts the root it checks that version of fstab to see if it
is different and then remounts things accordingly.
I find it simpler and more robust to remove the initramfs complexity if
I have no /need/ for it.
If you haven't guessed I'm a bit of a Dracut fan. :)
And I'm a fan of simplicity.
--
Grant. . . .
unix || die