summaryrefslogtreecommitdiffstats
path: root/os-plugins
diff options
context:
space:
mode:
authorDirk von Suchodoletz2009-08-12 19:20:10 +0200
committerDirk von Suchodoletz2009-08-12 19:20:10 +0200
commitda319360419f223c621447770c903fce6f1231ff (patch)
tree0d42f209932944ba79748d6b7ec582b42a5c119a /os-plugins
parentSmall fixes/hints in plugins. (diff)
downloadcore-da319360419f223c621447770c903fce6f1231ff.tar.gz
core-da319360419f223c621447770c903fce6f1231ff.tar.xz
core-da319360419f223c621447770c903fce6f1231ff.zip
Changes to make work qemukvm initially ...
git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@3084 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'os-plugins')
-rw-r--r--os-plugins/plugins/qemukvm/XX_qemukvm.sh6
-rw-r--r--os-plugins/plugins/qemukvm/files/qemu-ifdown15
-rw-r--r--os-plugins/plugins/qemukvm/files/qemu-ifup16
-rw-r--r--os-plugins/plugins/qemukvm/files/run-virt.include29
4 files changed, 49 insertions, 17 deletions
diff --git a/os-plugins/plugins/qemukvm/XX_qemukvm.sh b/os-plugins/plugins/qemukvm/XX_qemukvm.sh
index 40bd59ae..e9af0f10 100644
--- a/os-plugins/plugins/qemukvm/XX_qemukvm.sh
+++ b/os-plugins/plugins/qemukvm/XX_qemukvm.sh
@@ -35,8 +35,8 @@ pidfile /var/run/udhcpd.pid
opt dns ${domain_name_servers}
option subnet 255.255.255.0
-opt router 192.168.10.2
-opt wins 192.168.10.10
+opt router 192.168.101.254
+opt wins 192.168.101.10
option domain virtual.site ${domain_name}
# Additional options known to udhcpd
@@ -118,7 +118,7 @@ ${qemukvm_imagesrc}." nonfatal
# copy the /etc/qemu-ifup script and enable extended rights for running
# the emulator via sudo
cp /mnt/opt/openslx/plugin-repo/qemukvm/qemu-if* /mnt/etc
- chmod u+x /mnt/etc/qemu-ifup
+ chmod u+x /mnt/etc/qemu-if*
for qemubin in qemu kvm ; do
qemu="$(binfinder ${qemubin})"
[ -n "${qemu}" ] && \
diff --git a/os-plugins/plugins/qemukvm/files/qemu-ifdown b/os-plugins/plugins/qemukvm/files/qemu-ifdown
index 3842e1bb..f146c2d9 100644
--- a/os-plugins/plugins/qemukvm/files/qemu-ifdown
+++ b/os-plugins/plugins/qemukvm/files/qemu-ifdown
@@ -14,9 +14,18 @@
# -----------------------------------------------------------------------------
# Clean up script
-killall udhcpd 2>/dev/null
-iptables -t nat -D POSTROUTING -o br0 -j MASQUERADE 2>/dev/null
+
+case "$1" in
+ tap1)
+ # Bringing down the tap1 interface
+ killall udhcpd 2>/dev/null
+ iptables -t nat -D POSTROUTING -o br0 -j MASQUERADE 2>/dev/null
+ ;;
+ tap2)
+ # Bringing down the tap1 interface
+ killall udhcpd 2>/dev/null
+ ;;
+esac
# Produce a clean exit status
exit 0
-
diff --git a/os-plugins/plugins/qemukvm/files/qemu-ifup b/os-plugins/plugins/qemukvm/files/qemu-ifup
index b3e4155a..c51e6a9b 100644
--- a/os-plugins/plugins/qemukvm/files/qemu-ifup
+++ b/os-plugins/plugins/qemukvm/files/qemu-ifup
@@ -25,16 +25,26 @@ case "$1" in
;;
tap1)
# Configuring DHCP on host tap1 interface and enable IP masquerading
- mkdir /var/lib/qemu
+ [ -d /var/lib/qemu ] || mkdir -p /var/lib/qemu
sed "s,NWIF,tap1,;s,/misc/,/qemu/," /etc/opt/openslx/udhcpd.qemukvm \
>/var/lib/qemu/udhcpd.conf
- uclibc-wrapper udhcpd /var/lib/qemu/udhcpd.conf
+ touch /var/lib/qemu/udhcpd.leases
+ uclibc-wrapper ip link set tap1 up
+ uclibc-wrapper ip addr add 192.168.101.254/24 dev tap1
+ uclibc-wrapper udhcpd -S /var/lib/qemu/udhcpd.conf
echo "1" >/proc/sys/net/ipv4/conf/br0/forwarding
echo "1" >/proc/sys/net/ipv4/conf/tap1/forwarding
iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE
;;
tap2)
- :
+ # Configuring DHCP on host tap2 interface
+ [ -d /var/lib/qemu ] || mkdir -p /var/lib/qemu
+ sed "s,NWIF,tap1,;s,/misc/,/qemu/," /etc/opt/openslx/udhcpd.qemukvm \
+ >/var/lib/qemu/udhcpd.conf
+ touch /var/lib/qemu/udhcpd.leases
+ uclibc-wrapper ip link set tap2 up
+ uclibc-wrapper ip addr add 192.168.101.254/24 dev tap2
+ uclibc-wrapper udhcpd -S /var/lib/qemu/udhcpd.conf
;;
esac
diff --git a/os-plugins/plugins/qemukvm/files/run-virt.include b/os-plugins/plugins/qemukvm/files/run-virt.include
index 484fcb6d..df28c217 100644
--- a/os-plugins/plugins/qemukvm/files/run-virt.include
+++ b/os-plugins/plugins/qemukvm/files/run-virt.include
@@ -17,10 +17,24 @@
# include general configuration from vmchooser
. /etc/opt/openslx/run-virt.include
-permem=66
-mem=$(expr ${totalmem} * ${permem})
+permem=50
+mem=$(expr ${totalmem} / 100 \* ${permem})
VIRTCMDOPTS="${VIRTCMDOPTS} -m ${mem}"
+VIRTCMDOPTS="${VIRTCMDOPTS} -net nic,model=pcnet"
+
+case "${network_kind}" in
+ bridge*)
+ VIRTCMDOPTS="${VIRTCMDOPTS} -net tap,ifname=tap0"
+ ;;
+ nat|NAT)
+ VIRTCMDOPTS="${VIRTCMDOPTS} -net tap,ifname=tap1"
+ ;;
+ hostonly)
+ VIRTCMDOPTS="${VIRTCMDOPTS} -net tap,ifname=tap2"
+ ;;
+esac
+
# virtual fd/cd/dvd and drive devices, floppy b: for configuration
#VIRTCMDOPTS="${VIRTCMDOPTS} -fda /dev/fd0"
VIRTCMDOPTS="${VIRTCMDOPTS} -fdb /var/lib/virt/vmchooser/loopimg/fd.img"
@@ -47,17 +61,16 @@ ide="TRUE"
hddrv="ide"
# audio
-VIRTCMDOPTS="${VIRTCMDOPTS} -soundhw es1370"
+VIRTCMDOPTS="${VIRTCMDOPTS} -soundhw all"
# serial
#VIRTCMDOPTS="${VIRTCMDOPTS} -serial /dev/ttyS0"
# set the variables appropriately
-for i in kvm qemu-kvm qemu; do
- VIRTCMD=$(which kvm 2>/dev/null)
- [ -n $VIRTCMD ] && break
+for tool in kvm qemu-kvm qemu; do
+ VIRTCMD=$(which ${tool} 2>/dev/null)
+ [ "x$VIRTCMD" != "x" ] && break
done
-[ -n $VIRTCMD ] && { writelog "No qemu/kvm tool found."; exit 1; }
+[ -z $VIRTCMD ] && { writelog "No qemu/kvm tool found."; exit 1; }
VIRTCMD="sudo $VIRTCMD"
VIRTCMDOPTS="${VIRTCMDOPTS} -boot c -alt-grab ${diskfile}"
-