I should have mentioned the second script goes in /etc/uml/ and is named machine1.sh
Jonas On Thu, 2009-08-20 at 19:27 -0400, Jonas Meyer wrote: > What you are trying to do is possible, but requires a little bit of > funny command line scripting. Here are some scripts I wrote to boot UML > machines. You will need to create /etc/uml/, a uml-net user group, and > put each virtual machine as a user in its own home directory. Swap > files should be named swap and root filesystems should be named root_fs. > swap and root_fs should be owned by the user that the virtual machine > runs as. > > add the following to /etc/rc.local > > ------------------------------------------------------ > # Copyright Jonas Meyer 2009. This script is licensed under the latest > # version of the GPL, which is currently 3, and the full text of which > # is available at fsf.org > > # Make it so UMLs can use tuntap > chown root:uml-net /dev/net/tun > > # Make the host forward low level network packets from the UMLs to the > local > # subnet. This let's routers and stuff think that UMLs are real > machines. > echo 1 > /proc/sys/net/ipv4/ip_forward > > # This is a workaround for a bug where permenant entries disappear from > the > # arp table. Don't ask. I have no idea how this works. > echo 512 > /proc/sys/net/ipv4/neigh/default/gc_thresh1 > echo 1024 > /proc/sys/net/ipv4/neigh/default/gc_thresh2 > echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh3 > echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp > > # Finally, crank up each UML. Order is important, as some depend on > others' > # services. > /etc/uml/machine1.sh > sleep 15 > /etc/uml/machine2.sh > > > -------------------------------------------------------------- > > #!/bin/sh -e > > # Copyright Jonas Meyer 2009. This script is licensed under the latest > # version of the GPL, which is currently 3, and the full text of which > # is available at fsf.org > > # Set global variables > HOST_ADAPTER="eth0" > HOST_IP="xxx.xxx.xxx.xxx" > GUEST_IP="xxx.xxx.xxx.xxy" > USER="machine1" > TAP="machine1tap" > MAC="fe:fd:00:00:00:00" > MEMORY="48M" > > # make a tap interface (fake ethernet link that the host and guest > communicate via > tunctl -u $USER -b -t $TAP > ifconfig $TAP $HOST_IP up netmask 255.255.255.255 > > # tell the host how to talk to the uml > route add -host $GUEST_IP dev $TAP > > # make the host forward low level ip packets from umls to local subnet > # This lets routers and stuff know how to find the uml > echo 1 > /proc/sys/net/ipv4/conf/$TAP/proxy_arp > > # now do it back the other way to the uml > arp -Ds $GUEST_IP $HOST_ADAPTER pub > > # Crank up UMLs > screen -d -m -S $USER su - $USER -c > "cd /home/$USER ; /usr/local/bin/linux ubda=root_fs ubdb=swap > eth0=tuntap,$TAP,$MAC mem=$MEMORY" > > ---------------------------------------------------------------- > > pull out the extra linebreaks added by email and you should be good to > go. > > Jonas > > > On Fri, 2009-08-21 at 00:13 +0100, andy baxter wrote: > > hi, > > > > I have two virtual machines, dolphin and anthill, running on a single > > real machine, whale. I am trying to set them both up to serve websites. > > dolphin is for my personal stuff and anthill is for a site that I'm > > doing with some other people - I want to be able to give them root > > access to the vm but not to whale or dolphin. > > > > The problem I'm having is getting the networking set up right. I can > > start either of the vms separately, and they start up OK, but when I > > start them both together, the second one to start can't start its > > network. I've tried two ways of doing it: > > > > - using a single tap device (tap0), with the IP 192.168.2.1, and dolphin > > on 192.168.2.2, anthill on 192.168.2.3 > > - using two tap devices (tap0=192.168.2.1 --> dolphin=192.168.2.2, > > tap1=192.168.2.3 --> anthill=192.168.2.4) > > > > Neither of these seem to work. > > > > Before I try anything else, it would be good to know if what I'm trying > > to do is possible in principle, or if there are limitations in the way > > TUN/TAP works which I need to know about. What I really want is to have > > a virtual network of VMs all on the same network with a single route > > (tap device) to the host computer. The reason for this is that whale is > > also serving as my network firewall, and it's awkward to define rules > > for multiple interfaces in shorewall. > > > > Is this possible? > > > > Thanks, > > > > andy > > > > ------------------------------------------------------------------------------ > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > > trial. Simplify your report design, integration and deployment - and focus > > on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ > > User-mode-linux-user mailing list > > User-mode-linux-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > User-mode-linux-user mailing list > User-mode-linux-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ User-mode-linux-user mailing list User-mode-linux-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user