[Fedora-livecd-list] The long-awaited landing of persistence

Jeremy Katz katzj at redhat.com
Wed Mar 5 02:47:36 UTC 2008


After long periods of waiting and hoping, etc I'm just about to do a
push of some changes that at least give us a good base to build on for
persistent live images.  They're very very very heavily based off of
Douglas McClendon's patches that he posted here a month or two, but I've
done basically two things with them:
1) Integrated the findoverlay bits into mkliveinitrd directly and was
able to do a little bit of cleanup accordingly
2) Not put in the bits right now to do the snapshot teardown on shutdown

The former is pretty non-controversial.  The latter, well, we're going
to need some testing to know how feasible this really is.  I spent quite
a while this afternoon trying to cause any form of corruption without
the initscripts changes and never succeeded[1].  And realistically, if
it's going to cause corruption if we don't shutdown cleanly, then we
have problems if someone loses power or removes their USB key or any of
a whole bunch of other things occur.  I _did_ have the journal get
recovered and as long as things were able to get to the journal, it was
good to go.  But more testing is going to be needed.  So if anyone here
wants to try building some images and putting them on USB drives and
testing them out, that'd be greatly appreciated.  And then I'm going to
issue a larger call for testers with the Fedora 9 beta.  If we find that
we need to integrate some of the shutdown bits, we'll make it happen.
But right now, I'm feeling pretty confident that we won't

The quick steps of how to take advantage of the functionality:
1) Build a live image using the newer mkinitrd (6.0.32) in your repos
2) Use the updated livecd-iso-to-disk.sh with an --overlay-size-mb=512
(or 1024 or whatever based on the capacity of your USB stick minus the
size of the ISO)
3) Boot the USB drive

You can also (although it's more complicated) use a USB stick with a CD
1) Build live image as in 1) above
2) Create /LiveOS/overlay-$v- on your USB stick with size how ever big
you want (can be a sparse file).  $v is the label of the _iso_ (not of
the USB stick)
3) Find the label or UUID of the partition on the USB stick you're
using.  Write it down.
4) When you boot the CD, have the USB stick plugged in and add to the
kernel command line
          overlay=$dev
where $dev is what you found in step 3.  If it's a label, do LABEL=foo;
similarly uuid ==> UUID=foo.

Big big big thanks and kudos to dmc for doing all of the legwork here
and letting me off the hook for so long on actually getting it
integrated.  But once I finally got around to having a full afternoon to
spend on it, it was in great shape.

Jeremy




More information about the Fedora-livecd-list mailing list