lupin merge progress
Colin Watson
cjwatson at ubuntu.com
Mon Jul 30 17:57:48 BST 2007
I've spent some time recently trying to get the most difficult parts of
lupin merged - in spirit even if not the same code - and I think I've
made fairly good progress. I've made the following changes to the
alternate CD installer (as of tomorrow's daily build); this should
propagate into the desktop CD installer soon too, as there's nothing
d-i-specific in here yet.
Note that this is just a progress report for developers. The result
isn't usable by end users yet.
* I added a partman-auto-loop component to perform automatic
partitioning using loop-mounted filesystem images. This is
preseedable; 'bzr get
http://bazaar.launchpad.net/~ubuntu-core-dev/partman-auto-loop/ubuntu/'
and look at the README file. I hope that this will replace the vast
majority of lupin.postinst. I would very much appreciate feedback on
whether what I've got so far is good enough to do so, as
lupin.postinst is the bit of lupin that I most want to go away. :-)
* There were a few other partman changes needed to support the above,
including fixing a very long-standing bug in recipe expansion.
* I uploaded initramfs-tools 0.85eubuntu15, which adds support for the
loop= argument (also loopflags= and loopfstype=). This should let
you boot with root=UUID=uuid-of-the-host-filesystem
loop=/disks/root.disk to make the filesystem on /disks/root.disk be
the real root filesystem. I realise this is different from what
lupin has been doing so far; it seems like an elegant and small
change to initramfs-tools which fits in well with how things
currently work, though. I made the host filesystem mount point be
/host rather than /media/host to avoid possible clashes with
removable devices, and arranged for it to be moved (read-only) to
/root/host after the root filesystem is mounted.
Things that still don't work:
* I can't boot yet, due to write() failing mysteriously with -EPERM in
the middle of fscking the root filesystem; I think this might be due
to VMware getting confused (I had a "Bad page state" kernel warning
earlier), so I'll try again later with a fresh image.
* You still have to install grub manually; I haven't done anything
about that.
* Swap won't be enabled; it's specified by UUID but needs to be
specified as loop-mounts from /host.
* If possible, /boot should really be bind-mounted from /host/boot so
that we don't have to have lots of special-cased messing around for
things like grub installation and kernel updates.
* We don't yet have ntfs-3g support, so I've been testing this with an
ext3 host filesystem; Phillip is due to be sorting that out soon (so
CCing him just so he knows where that work fits in).
Comments welcome! Is it possible to update lupin to make use of this, as
we discussed a while back?
--
Colin Watson [cjwatson at ubuntu.com]
More information about the Ubuntu-installer
mailing list