| 
    						
      			|  | 
						
							| 
									
									
									
									
										| 
 
 
												
													| Section: | 									
															Introduction
														 |  
													| Description: | 
															It will be a good idea to have previous knowledge of installing and running a UML, 
															before using umvs. If you have not, or you don't know what a UML is, then I 
															suggest go to the UML websiteand get yourself acquainted with user-mode Linux.
 
 |  
 |  
										| 
												
													| Section: | 
															Specs
														 |  
													| Description: | 
															umvs specifications:
															
																Languges: C++, BashConfiguration file format: XMLLicense: GNU General Public License(GPL)Develpoment environment: Kdevelop 3, gcc-3.2.2Develpoment platform: Redhat 9, Fedora Core 2Testing platform: Redhat 9, Fedora Core 2Compatibility: Linux onlyDependancies: |  
 |  
										| 
												
													| Section: | 	
															Compilation	& Installation							
														 |  
													| Description: | 
															Running:
 
																
																	| 
																			bash$ ./configure --prefix=/usr --sysconfdir=/etc...
 bash$ make
 ...
 bash$ make install
 ...
 bash$
 
 |  
 
																will install the umvs executable and scripts into /usr/bin and the
																configuration files in /etc/umvs. The defaults are /usr/local/bin
																and /usr/local/etc/umvs respectively. Run ./configure --help to see all the
																available configuration options.
 
 |  
 |  
										| 
												
													| Section: | 	
															Configuration								
														 |  
													| Description: | 
															/umvs/umvs-config NodeConfiguring the /umvs/umvs-config node is very straight forward, 
															please refer to the
 /umvs/umvs-config 
															node referencefor a description of each attribute.
 /umvs/umvs-network Node
 First of all, decide which network topology you are interested in using. Refer
															to the
 Network Topologiessection 
															for the available topologies(each topology is described in detail in the/umvs/umvs-network node 
															reference). When you have done that, configure the attributes(again 
															refer to the/umvs/umvs-network 
															node reference).
 
															Note: When neither the ethernet or the tap device is specified, umvs 
															will create and configure only the bridge connected to the UMLs, 
															this means that the bridge has to be connected to another device to be able 
															to have network connectivity. The connection between the bridge and the other 
															device should be taken care of by you, umvs will though provide for 
															opportunity to configure other devices in the init script to try and aid you
															in the task.
 Now is a good time to make shure that your 
															dhcpd daemon is configured and in place. You don't have to start it, umvs 
															will take care of that.
 
 
 |  
 |  
										| 
												
													| Section: | 
															Adding a new UML						
														 |  
													| Description: | 
															The following will happen when a new UML gets
															added(umvs -a [ID]):
																First umvs will find out if the ID is available.If the ID is available, then the IP address will be determined by parsing the dhcpd.conf file.
																When a host entry, with the same name as the ID, exists, then that host entry will be used to configure
																the UML(IP address, MAC address and hostname). This also in effect means 
																that any changes to dhcpd.conf, will be applied to the UMLs. If no host entry exist, then it will
																be generated and added by umvs using the next availbale IP address, a MAC address generated from the ID 
																and a hostname(if the hostname is not specified, the ID will be prepended to the hosts' hostname and used as 
																a hostname for the new UML, for example ID.yourhostname.com).The /umvs/umls/uml node is then added to umvs_conf.xml.umvs_conf.xml is reparsed, and the following directories are created:
																	'home'/ID/ - contains the COW and swapfile(the swapfile will also be created, but only if the swap size is specified in the template).'ulm_dir'/ID/ - mconsole dir, will contain the socket and PID file of the UML when started.And lastly, the UML gets enabled(default). 
 |  
 |  
										| 
												
													| Section: | 
															Starting the UML
														 |  
													| Description: | 
															The following will happen when a new UML gets
															initiated(umvs -I [ID]):
																The network will be configured and started if it is not allready up.dhcpd.conf, umvs_conf.xml and umvs_spec.xml are parsed to check for updates 
																and to see if the UML is enabled.Any modifications are applied.The specified template is parsed.
																	                                                                      
                                                                    	
																			
																				The UML is initiated/started by executing the following command(this will depend on 
																				your template configuration):
																			
 
																				
																					| 
																							/usr/bin/screen -dmS william_www su - william -c '/umvs/bin/linux-2.4.20 ubd0=../../misc/home/www/www_uml.cow,/umvs/rh9server/root_fs ubd1=../../misc/home/www/www_uml.swapfs con=null con0=fd:0,fd:1 fake_ide fakehd mem=128M  ubd=3  uml_dir=../../misc/uml_dir umid=www eth0=tuntap,william_www0,FE:FD:4E:AE:35:F1'
																						 |  
The UML init output can be viewed in the configured UML log file. 
 |  |  |  
							
						 |  |  |