1.0 INTRODUCTION For room constraints, I've only included one set of UML core files and a set of different scripting files. The linux_uml_lvs directory is the source code and already has the LVS and UML patched. Also this UML sessions is configure with an IP address of 128.198.60.203 and a netmask of 255.255.255.128. You should set your host machines to theses settings. For each UML (User Mode Linux) session you need: 1> the linux execuatable 2> one of the three running script (connRS1, co nnRS2, connCS) 3> root_fs 4> (Optional-- only for debugger) /home/frank/uml5/linux_uml_lvs source directory 2.0 INSTALLING 2.1 Installing tools For convienence there is a file called uml_utilities_20020906.tar.bz2 UML won't work right without this installed. It contains monitoring tools and all sorts of drivers. To install tools: first unpackage the tar.bz2 file by typing tar xvjf uml_utilities_20020906.tar.bz2 a tools directory should of been unpacked cd tools to install tools type: make all make install * you need to be root to do this... 2.1 Install w/ UML Debugger (or Content Switch) If you want to run UML with the debugger, you will need to run the connCS script and place it in an absolute directory /home/frank/uml5 with the source code directory /home/frank/uml5/linux_uml_lvs. This is because I compiled the linux executable with debuggin options in this absolute directory, and this is where the debugger looks for the source files. These are the files you'll need in their respected absolute directory. 1. /home/frank/uml5/root_fs 2. /home/frank/uml5/run_CS 3. /home/frank/uml5/linux_uml_lvs 4. /home/frank/uml5/linux 2.2 Normal install with debugger Just a small note. It is not a good idea to run two UML sessions with the same linux executable and root_fs. Bad things have been known to happen. So just scrifice the space and make copies. Copies are actually a good idea, expecially for the root_fs, because a kernel crash could wipe out your root_rs fairly easily. Now to the setup info. The only different between this setup and using the debugger is you need to use the run_rs1 and run_rs2 scripts (either one, and only one) oppose to the runCS. And unlike the debugger version, you can run these files from any directory. So the files you'll need are: linux root_fs One of the non-debugging scripting files (run_rs1 or run_rs2) Note to the wise: each of the running scripts are configured using either ethertap or tuntap device drivers. These drivers interface with your eth0 NIC to create the virtual network. run_rs1 and run_rs2 use ethertap and runCS uses tuntap. Now, tuntap is the newest, more reliable, device driver, according to the UML documentation. I've taken the liberty of configuring these three scripts so they point to different device driver names and IP address. Otherwise if you have two sessions of the same driver and will crash you host machine. Take my word, this is not fun. So use each of the three scripts separately and never double up scripts. RUNNING Once everything is installed and you just need to run the respectable script (either runCS, run_rs1, or run_rs2). Once you run them you'll get a login screen. username: root password: linuxuml In the root directory, there are four more scripts (connCS1, connCS2, connRS1, connRS2). Now depending on which starting script you ran from the host prompt determines which script you should use. connCS (connCS1 gives you one IP address) or if you used runCS connCS2 (connCS2 gives you two IP address) connRS1 if you used run_rs1 connRS2 if you used run_rs2 After executing one of these scripts, you should try to ping the hostmachine ping 128.198.60.203 you should see a packets coming back and forth. if you have any questions, please feel free to email me at frank@math.uccs.edu Also, the UML website has a wealth of information (although not clear in some respects). http://user-mode-linux.sourceforge.net/