Because it can be tricky to get user mode linux working correctly, I have written out some "works-for-me" directions about the specific version I have gotten working. For a comprehensive document, go to the UML home page. Of particular note, these instructions allow one to build and use UML on the UT Linux boxes without root access.
I used Linux 126.96.36.199 + the skas-2.6.13-rc7-v9-pre7.patch uml patch. I used the Debian-3.0r2.ext2 disk image file from mdz as a starting point.
To select kernel options, type 'make ARCH=um menuconfig'
Be sure to:
To compile, type 'make ARCH=um linux'. If you have problems, you
can also add 'KBUILD_VERBOSE=1' to the command line to see what is
UT Notes: For some reason compilation doesn't go as smoothly on the UT machines as at home for me. In particular, to get everything to compile I had to type the definition of CLONE_PARENT into arch/um/kernel/skas/clone.c. Also, change '/lib/libutil.a' to '-L/usr/lib -lutil' in arch/um/Makefile (thanks to Sibi Govindan).
You will want to download and install the uml utilities package (in particular the port-helper binary). Also, you will want to download and install the slirp package.
Type: ./linux ubd0=./Debian-3.0r2.ext2 eth0=slirp,,/path/to/slirp/executable
and you are off to the races.
To get networking without root, you can use slirp. There are better
ways of setting up virtual networking, but you have to have root on
the host machine. So,
here we are.
Log in to uml as root
Edit /etc/resolv.conf and add:
iface eth0 inet static
ifup eth0 (first time only - after that it should start on its own).