User Mode Linux was the topic of this month’s Cincinnati Linux Users
Group (CLUG). Since this blog is running on a
UML host, I thought I would talk about that for a bit.
|NOTE: :||Most people (myself included) tend to think of the Unified Modeling
Language (a graphical notation for expressing Object Oriented designs
and models) when they hear "UML". However, for the rest of this
article, UML will be used to mean User-Mode Linux.
What Is UML?
User Mode Linux is a version of Linux that sits on top of a running linux
system and runs entirely in the users unprotected process space. At first
glance, this seems like a really useless idea. Why run a virtual Linux when
you have a "real" version already running on your hardware. It
turns out there are a number of useful things
So why would you want to run a User Mode Linux? Here’s some
- Kernel Development. Running your test kernels in user space makes it
much easier to debug your kernels. And crashing a kernel just brings down
your local copy, nothing else.
- Experimenting with New Kernels or Distributions. Again, because the
UML is isolated from the real system, you can try out new kernels or even
whole distributions that you would not normally want to deal with.
- Secure Sandbox. Since the UML has no access (not explicitly granted)
to the host Linux system, a UML is a great place to run potentially
- Experimentation. Ever wonder what would happen if you typed "rm
-f /" as root. Do it in a UML without fear of breaking anything else.
- Networking. UMLs each act as their own host, so you can setup a
network of UMLs on a single box to experiment with networking solutions.
- UML Farm. Put a bunch of UMLs on a single server and let individual
users have an entire (virtual) linux system to themselves. We’ll come
back to this idea in a moment.
You get the idea. So why is this blog hosted on a UML? First, we need some
The UML Coop
Over the years, the local ISP that I use went from being a great ISP to
being a very mediocre company. Changing hands several times, it was finally
bought by Nuvox who offered to
"upgrade" our 100 Mbs of web storage to a generous 5 Mb. Several
members of CLUG began looking for alternative web hosting solutions.
In January of this year (2003), David
Coulson from the Cleveland Linux User Group came to give a presentation
on UML. David has done extensive work with UML and mentioned that he was
interested in starting a COOP that would purchase a server on the internet.
Each member of the COOP would get their own UML instance to do whatever
It took several months before the COOP came together, but by May we had
purchased a server and hosted it at N2Net in
Cleveland. The system is currently supporting around 20 UML instances with
little problem (except for the one day we got slashdotted).
How CLUG members are using their UMLs?
- Web hosting for shafferhouse.org, a
family picture galary.
- Web hosting for exams4pilots.org, a
practice exam site for pilots.
- TMDA Mail Filtering (TMDA is worth a posting
in its own right).
- Jeff has applied to join the UML COOP, but hasn’t got his UML
instance setup yet.
- Shell access from an internet host
- Mirroring for picture galleries. Ryan hosts a web site on his home system,
dlugosz.net. To avoid high bandwidth on
his home box, he redirects graphic requests to his UML box.
Some UML Links