I have now successfully installed a uml image of Red Hat's fedora core 1
distribution using Red Hat's ordinary install process (anaconda), and
below is a brief outline of how I did it.
Create a blank file to contain the root file system (600M is just too small
for a minimal install, I tried 640M). eg.
dd if=/dev/zero of=root_fs seek=655359 bs=1024 count=1
Put the fedora binary ISOs in an empty directory on the host, uncompress
and add the attached updates.img and share the directory in NFS ready for
the uml system.
Build an appropriate kernel, I choose one with options built in rather than as
modules, but with module support enabled. Boot it with extra memory specified
and a bigger than normal ramdisk (I haven't tuned these parameters), and some
Extract a standard initrd.img from the CD, eg. from the boot.iso image.
./linux initrd=initrd.img mem=256M ramdisk_size=10240 text noprobe + network options
Edit the image to put appropriate /dev/ubd... devices in.
Boot the uml system.
1. If your kernel segfaults very early on try
echo "0" >/proc/sys/kernel/exec-shield-randomize
2. Ignore errors about ubdb* not existing. The isys.py in the updates.img
file manually adds the ubda and ubdb devices. A later version (if I ever
write it) will try to detect any such drives properly.
3. sda may get mentioned. This "drive" seems actually to be the first
16384 bytes of the root_fs file though I am not entirely sure why.
4. The install will probably restart shortly after partitioning, but work
the second time. This is probably this bug.
5. My install was slow because there seemed to be NFS timeouts between the
host and uml systems, though this might have been my kernel at fault.