User Mode Linux

I'm in the process of setting up a test environment to reproduce some problems a client is experiencing. Since testing the software is potentially destructive (it syncs /etc/passwd, /etc/samba/smbpasswd, and others), I didn't want to do it on any machine that I rely on. And since I actually need a couple of machines to do the test, I thought it would be a good opportunity to give user mode linux a spin.

I was initially distracted by the option of generating my own filesystem image using rootstrap, but despite the many configuration options, didn't find a lucid example of how to set up rootstrap with network access so that it can download the packages it needs to generate the image. That, and the fact that the UML processes weren't being reaped on my computer. The longer I worked, the more zombie processes would be left around, and after a few minutes I would get

fork: resource temporarily unavailable
messages when trying to run any command, and my UML sessions would tend to freeze up.

This morning I had much better luck. First off, I realized that there's not much need to build my own filesystem image, when standard woody images are readily available.. After booting one of these images, I can apt-get any additional software I need inside the virtual machine. Also, I applied the kernel-patch-skas patch and rebuilt my host kernel. After this, I had no more issues with too many processes. I'm guessing that the older tt-mode isn't well supported any more.

This is cool and very useful software. After my initial problems, I'm pleased at how easy it is to use UML. I'm looking forward to using it for testing VPN software and other network configurations for which I don't have enough real machines of my own to do testing. It would also be convenient to test custom installation CDs and new kernels more quickly, easily and safely than using my workstation directly.

Posted by Jason Hildebrand <jason@opensky.ca> Tuesday Dec 14, 2004 at 11:47 PM