early userspace and volume management

Bill Rugolsky Jr. brugolsky at telemetry-investments.com
Fri Oct 10 18:29:02 UTC 2003


Back in January I started packaging up Device-Mapper, and LVM2, and
made some changes to initscripts, mkinitrd, etc., to get root-on-lvm2.
Now that device-mapper is stabilizing, I'd like to take up this task
again and contribute the changes to Fedora core.  Before doing so,
I'd like to solicit some feedback on how to proceed with changes to
early userspace.

1.  nash is inadequate to the task.  Replacing it with a real shell
    and other tools will take us over the size limit for
    a floppy.  Does it matter any more?  A kernel with ACPI won't fit
    on a floppy either, and we are going to want to include a lot of
    userland discovery code in initramfs as we move into 2.7.

    Once we exceed the size of a floppy, is there another "natural"
    size constraint that would prevent just using the usual tools, such
    as mdadm, perhaps in a multi-call binary or rebuilt against klibc?

2.  People are going to use various combinations of MD, Device-Mapper,
    LVM2, and EVMS2.  Do we want to support the simultaneous, stacked
    use of all of these?  Is that too complicated, and should, e.g.,
    (LVM2+dmsetup) and EVMS2 be mutually exclusive?  One of the nicest
    features of EVMS2 is the support for legacy partitions.  This can
    also be done with dmsetup and some scripting, or by generalizing LVM2.

3.  We currently lack any infrastructure for reconfiguration in early
    userspace.  There are numerous maintenance tasks that require that
    a resource be taken offline, e.g., repartitioning, or shrinking a
    filesystem.  I am currently working on scripts to do a system upgrade
    (repartition, etc.) on a RAID1 system with minimal downtime by (a)
    breaking the mirror, (b) upgrading the detached half, (c) reboot
    using the upgraded system image, and (d) resyncing the mirror.
    One could as well imagine support for pulling a new system image
    from a server.  Ideally, there would be infrastructure to just drop
    in early userspace scripts.  Initramfs makes this easy, because one
    can just append a cpio archive with the required files.

4.  Volume management is just one of many tasks that need attention
    in early userspace.  Is there a roadmap anywhere?

Any thoughts or pointers to works-in-progress would be appreciated.

Regards,

	Bill Rugolsky





More information about the fedora-devel-list mailing list