Takashi Iwai: initrd

July 12, 2013

Participants: Takashi Iwai, Greg KH, Dave Jones, H. Peter Anvin.

People tagged: Dave Jones, Harald Hoyer.

Takashi Iwai noted that although initrd is fundamental to the kernel's operation, there are a great many different ways that it is handled, and that a single “official” approach might be helpful, perhaps following up on Dave Jones's proposal from a few years back. Greg KH said that he thought that dracut was the answer, and that pretty much all distros other than SUSE were using it. Dave Jones then gave the following summary of the history:

“There should be a cross-distro initrd maker”
“YES! THERE SHOULD!”
“ok, here's a couple hundred lines of shell that just does really basic stuff that we can start working from”
“pfft, screw that, let's start with the [debian|suse|whoever] one”

Dave continued that the discussion continued in this vein for some time, and that he eventually handed off the Harald Hoyer, who made dracut what it is today. H. Peter Anvin indicated that dracut had substantial room for improvement, for example, producing an initrd four times larger than the kernel and failing to separate out kernel-specific components from distro-specific components. Peter suggested that a better way forward would be to have the kernel build process export a cpio image of the kernel's modules and module metadata. This image could then be pulled in either at install or boot time. Peter further suggests creating additional system metadata containing things like /etc/mdadm.conf, /etc/fstab, and so on. Then initramfs could pull these together to create the needed initrd.