On our new server some services run in virtual servers using user-mode-linux (UML) - uml1=openvpn uml2=bind
Users can also get their own root account on their own dedicated uml, to add services, users, mail-accounts whatever.

For simplicity every reboot reverts any changes to the root filesystem. That avoids fsck on it, after an unclean shutdown.
To have services running after a start, edit /host/init, which is automatically called as last step of booting. The default one copies files from /host/files/ and mounts your /home partition, which will also keep it's content after a reboot. I install rpms from /host or /home and start whatever needs starting, but feel free to install your binaries into /home or whatever.

On the host side there are separate users named uml1, uml2, etc. and their /home/uml1/1 dir in shown as /host in uml1

To re-start an uml first shut it down by using halt command (if machine crashed/hangs use unclean shutdown: uml_mconsole uml1 halt ) and then let the uml user call startuml . For interactive booting add i=1 in front of it.

Valid HTML 4.01!