
3 changed files with 88 additions and 5 deletions
@ -0,0 +1,15 @@
@@ -0,0 +1,15 @@
|
||||
Right now, I'm doing most of my testing using a qemu/kvm guest and |
||||
generating the initramfs on another box. I then can boot the guest |
||||
using qemu's -kernel and -initrd options. Currently supported rootfs |
||||
types are regular partitions, root-on-lvm and root-on-lvm-on-encrypted-pv. |
||||
|
||||
generate.sh exists and will build an image. Right now, it depends on |
||||
some existing pieces of the Fedora initrd infrastructure, but moving |
||||
those out is a priority now that the basic functionality has been |
||||
proven. |
||||
|
||||
To use, just run generate.sh with an output file for the initrd. It |
||||
will copy over some binaries as well as the appropriate shared library |
||||
dependencies. If you are doing a rootfs type that requires modules |
||||
(on Fedora, this is just encrypted root now), you'll want to have the |
||||
modules tree to copy in in a modules/ sub directory. |
@ -0,0 +1,49 @@
@@ -0,0 +1,49 @@
|
||||
Current TODO list, broken into things which are relevant for the |
||||
initramfs itself (/init et al) vs the generator |
||||
|
||||
INITRAMFS TODO |
||||
-------------- |
||||
* Currently, our switch_root command uses nash's switchroot. Getting |
||||
a reasonable switchroot implementation into util-linux-ng is a |
||||
pre-condition for support on other distros |
||||
* The hard-coded list of udev rules that we care about is kind of |
||||
lame. See about getting /lib/udev/initrules.d or similar for storing |
||||
the rules that we care about in the initramfs. These could be |
||||
symlinks/hardlinks to the main rules in some cases or special-cased |
||||
ones |
||||
* LVM activation by udev is a bit of a large hammer right now |
||||
* dm-crypt (luks) depends on plymouth |
||||
* plymouth is hard-coded... this may be reasonable as modesetting goes |
||||
into the upstream kernel as a way to get off of fb-splash stuff, but I |
||||
can see this being a point of contention for other distros |
||||
* plymouth --show-splash should be done as a udev rule so that we |
||||
can switch modes first |
||||
* root= parsing should be done with udev creating /dev/root symlink |
||||
for us appropriately |
||||
* Support thaw (resume from hibernate) |
||||
* Currently requires the drop-nash branch of plymouth; get merged into |
||||
master and released |
||||
* Proving some support with a simple network based root would be good |
||||
* Do we just call dhclient, etc or try to get NetworkManager going? |
||||
* Would be nice not to have to kill and restart udev across switchroot |
||||
* mdraid |
||||
* dmraid |
||||
* multipath |
||||
* SELinux policy either needs to be loaded from the initramfs or /init |
||||
on the rootfs |
||||
|
||||
|
||||
|
||||
GENERATOR TODO |
||||
-------------- |
||||
* Needs to be written to look at the current kernel and get the |
||||
modules so it can be used on a running system. |
||||
* Move the needed pieces of Fedora mkinitrd's initrd-functions into |
||||
this tree. This should mainly be around shlib resolution/copying at |
||||
present |
||||
* We should just grab appropriate modules rather than all of them. |
||||
* Should default to basically all storage drivers, possibly allow to |
||||
specify less |
||||
* Maybe use class based specifiers (=ata, =net, etc) that we do |
||||
today with Fedora mkinitrd |
||||
* Certainly more as this is a huge hack right now |
Loading…
Reference in new issue