From 23bffb6f9ba940a60e34bf11b37d37f0508a252a Mon Sep 17 00:00:00 2001 From: Will Woods Date: Wed, 2 Jan 2013 15:26:10 -0500 Subject: update README --- README | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/README b/README index 128a7fc..1c0a61f 100644 --- a/README +++ b/README @@ -8,3 +8,44 @@ If you're reading this, I hope maybe some of this will be useful to you? -w Will Woods + +HOW IT WORKS: + +Before you start, you should edit testboot.conf and set $dracutdir and $cdrom. + +The first time you run testboot.sh, , it will open up the configured CDROM +image and pull out some files: + + vmlinuz + vmlinuz.kv + initramfs.img.orig + initramfs.orig/ + /lib/modules/$(kernel version)/ + +It then rebuilds the initramfs using the dracut in $dracutdir, and whatever +$dracut_opts you set in testboot.conf. This creates: + + initramfs/ + +Next, if there is an updates/ directory, its contents are copied into +initramfs/. And then we create: + + initrd.img + +which is just a compressed cpio archive of initramfs/. + +Finally, we run virt-install, booting the vmlinuz+initrd.img (PXE-style) with +any kernel arguments given on the commandline. + +TIPS: + +To force a rebuild of the initramfs, 'rm -rf initramfs'. + +Remember that the files in 'updates/' are applied to the *initrd*. If you want +to apply updates to the anaconda runtime put them in 'updates/updates'. For +example, adding 'updates/updates/usr/bin/free' would add the 'free' binary to +the anaconda environment. + +BUGS: + +If you remove something from updates/, it doesn't get removed from initramfs/. -- cgit