The User-mode Linux Kernel Home Page
User-Mode Linux is a safe, secure way of running Linux
versions and Linux processes. Run buggy software, experiment with new
Linux kernels or distributions, and poke around in the internals of
Linux, all without risking your main Linux setup.
User-Mode Linux gives you a virtual machine that may have more
hardware and software virtual resources than your actual, physical
computer. Disk storage for the virtual machine is entirely contained
inside a single file on your physical machine. You can assign your
virtual machine only the hardware access you want it to have. With
properly limited access, nothing you do on the virtual machine can
change or damage your real computer, or its software.
Plus, there's lots more! Look at that sidebar on the left and see all
the stuff that hasn't been mentioned yet.
This page contains brief
descriptions of how people are using User-Mode Linux.
The kernel page has a
brief description of the kernel, its capabilities, and how it makes
use of the hosting kernel's resources.
The download page tells
you what you need in order to run the kernel and where to get it.
The running it page
describes how to run the kernel, what to do once it's running, and how
to shut it down.
For some fun with UML, see the
Sysadmin Disaster of the Month contest where you will trash a
UML system and figure out how to fix it.
This page describes how
to get the source and build it, plus how to compile and use kernel
The to-do page lists the
current major bugs, patches which would be nice to incorporate, and
lousy code that needs to be cleaned up.
- Here is a screenshot
of a two-machine virtual network, with one node running a local X
server and the other displaying an xterm onto it.
Rusty Russell wrote a nice HOWTO, which can be found
Also see David Coulson's
UML community site
for news, forums, and lots of other stuff.
This project has outgrown my ability to run it on a volunteer,
part-time basis and parts of it have not had any attention for a while
and have fallen seriously behind. So, I'm looking for people to help
pick up the pieces that I've dropped.
There are jobs suitable for all ages and skill levels. See
Overview - the
overall picture of what needs doing, plus some miscellaneous things
that didn't fit anywhere else
Documentation - if
you like doing documentation, this describes how the UML docs are done
and lists some of the things that need doing
UML utilites -
for people who code, this page describes what needs doing with the
various UML utilities and a few other areas of userspace
UML version 1.0
- If you want UML to reach V1.0 already, here's the current list of
bugs, small features, and cleanups that I want done before I consider
it to have reached that milestone.
UML projects - If
you're a far-seeing kernel hacker, this is my list of post-version 1
projects for UML.
There are a number of pages showing the user-mode kernel in action:
You can make a donation to the UML project through PayPal, and help
ensure that I can continue to spend time on it, by clicking on this button:
Or you can send it the old-fashioned way to this address:
375 Tubbs Hill Rd
Deering, NH 03244
If there's a UML feature that you need or a bug you want fixed now
rather than when I get around to it, and you'd be interested in
sponsoring the work, get in touch with me at jdike at karaya dot com.
ISTS and Bill Stearns for sponsoring the security work in UML
for sponsoring the floating point ptrace fixes
The UML SMP and highmem work, and the existence of the 2.5 BK
repositories were sponsored by
Thanks to Steve Freitas, Harry Zink, and the
Project for donating an SMP box so that host SMP problems can
HP contributed a
nice IA64 workstation to the UML project.
This project is hosted at
which provides a number of useful services:
Send any questions, comments, flames, etc to jdike at karaya dot com
This web site is hosted at sourceforge
The project page , which contains pointers to everything associated with
- for discussion
of the innards, code, algorithms, etc.
- for discussion
of the outards, questions about running the kernel, configuring it,
Bug reports may be sent to either list.
Searchable list archives exist at MARC
uml-devel) and gmane
CVS - The code is in cvs, and can be browsed from
There is also anonymous CVS, which can be accessed by
cvs -d :pserver:firstname.lastname@example.org:/cvsroot/user-mode-linux cvs command
IRC (see www.irchelp.org/ for more
information on IRC) - #uml on irc.oftc.net is where I hang out 2-3
days a week. It's good for general UML questions and chit-chat.
#kernelnewbies on oftc.net is a also good place for UML questions
and discussion that relate to kernel development in general.