[LFS Trac] #2033: Create initramfs

LFS Trac trac at linuxfromscratch.org
Sat Jun 16 12:52:34 PDT 2007

#2033: Create initramfs
 Reporter:  alexander at linuxfromscratch.org  |        Owner:  lfs-book at linuxfromscratch.org
     Type:  enhancement                     |       Status:  new                          
 Priority:  lowest                          |    Milestone:  Future                       
Component:  Book                            |      Version:  SVN                          
 Severity:  normal                          |   Resolution:                               
 Keywords:                                  |  
Comment (by Bryan Kadzban):

 Replying to [comment:3 alexander at linuxfromscratch.org]:
 > IMHO, Debian's yaird would be a better starting point.

 Hmm.  Yes, it's better tested, and yes, it's more widely used, and yes,
 it's supposed to be distro-independent (assuming somebody wants to write
 the proper template(s) for LFS).  But based on reading the design goals
 page ([http://yaird.alioth.debian.org/yaird.html]), it seems like it's way
 more complicated than anything I was thinking.

 Not that that's bad, but all the support for encrypted root, S390 stuff,
 NFS root, etc., seems like overkill.  Ideally I'd like to come up with
 something that lets users add that stuff relatively easily themselves, by
 editing the (e.g.) /usr/share/mkinitramfs-<version>/init file and
 rerunning mkinitramfs.  Of course that would require bash knowledge.  Hmm.

 There are also several kernel command line parameters that are unsupported
 (the ide*= stuff that the LiveCD just added, root=, etc.).  They say root=
 isn't supported because it'd require hotplug (=udev) support and support
 for lots of FSes, but the LiveCD already does both of those.  And I'd be
 OK adding lots of stuff to the initramfs, if that stuff is there to make
 it work the same on any (or at least most) x86-type machine(s) that boot
 to a local disk.   Full persistent disk support should be there too, IMO.
 But NFS/encryption/etc. are a bit much IMO.

 (Plus yaird also requires a cpio binary.  :-P  But maybe that's inevitable

 > The set of packages in the book is not frozen. Suppose one finds a bug
 in udev rules and wants to update rules in initramfs. Then cpio is
 definitely preferred to usr/gen_init_cpio.

 Only if a compiled kernel tree is not available...  :-)

 But I do think that scenario is entirely possible, so we should plan for
 it one way or another.  What about a mkinitramfs "package" that contains a
 copy of gen_init_cpio (modified to handle taking the list of files from
 stdin) to be installed permanently, along with the mkinitramfs script that
 uses it, and /init?  It'd be similar to the iana-etc package (small,
 specific, etc.), although it'd contain more than just config files.

 Or, we could do this all in BLFS, and point the user there at the end of
 LFS if they have special booting needs.  That may be preferable if cpio is

Ticket URL: <http://wiki.linuxfromscratch.org/lfs/ticket/2033#comment:5>
LFS Trac <http://wiki.linuxfromscratch.org/lfs/>
Linux From Scratch: Your Distro, Your Rules.

More information about the lfs-book mailing list