Running distribution installation procedures
There are a number of reasons to want to run a distribution's install
procedure inside UML:
A couple of installation procedures have been made to run under UML:
The result is an authentic, upgradable installation, which you might
not get by using a more ad-hoc method.
You can do a dry run of the install without needing to devote hardware
to it. This can tell you what the installation will involve, and
booting the result will give you an idea of what the distribution
looks like once installed.
It's good exercise for the kernel. Installation procedures are
somewhat unusual and they are good at exposing bugs in the kernel.
Slackware - This one was the easiest so far. Slackware has a
completely text-based procedure and it is also willing to take your
word on what devices it should use as installation sources and
targets. It doesn't poke at the system and do sanity checks on
devices like other, more user-friendly, installations do. A Slackware
installation kit is available
It contains a Slackware boot disk image and a README which will walk
you through the install. You can see the README
here, and a log of
a typical installation
SuSE - SuSE is pickier about the system it installs on. It looks at
/proc/partitions to figure out what devices are available as
installation targets, which requires the ubd block device to fake
partition information. It doesn't seem to have a textual install.
Instead, it uses ASCII graphics which only seem to display right on a
virtual console. I haven't found a terminal emulator which will do
the right thing with it. So, in order to run the SuSE installation,
you have to run the kernel on one of the host virtual consoles.
RedHat - It takes a little hacking to get RedHat to install cleanly
on a UML system, but Oleg Drokin has suceeded in getting RedHat up and
running. He has produced a document with lots of
screenshots if you want to do it yourself.
- Debian - The Debian UML maintainer, Matt Zimmerman has managed to
get Debian Woody to install under UML with only a number of small issues.
You can read all about his progress at lists.debian.org where his original post to debian-boot can be
Linux From Scratch - LFS is a slightly different kettle of fish, as we
have to compile our own Linux distribution, then boot it on UML. There
is a great HOW-TO
on using LFS with UML over at hints.linuxfromscratch.org.