summaryrefslogtreecommitdiffstats
path: root/remote/modules/vbox/data/opt/openslx/etc
diff options
context:
space:
mode:
authorDirk2013-12-13 20:52:00 +0100
committerDirk2013-12-13 20:52:00 +0100
commitefd86cc8b5b138e4076bf1657ea888dc52e62901 (patch)
treedde241d9c0041f10584415e97c6b6f326e03cd3f /remote/modules/vbox/data/opt/openslx/etc
parentMerge branch 'master' of git.openslx.org:openslx-ng/tm-scripts (diff)
downloadtm-scripts-efd86cc8b5b138e4076bf1657ea888dc52e62901.tar.gz
tm-scripts-efd86cc8b5b138e4076bf1657ea888dc52e62901.tar.xz
tm-scripts-efd86cc8b5b138e4076bf1657ea888dc52e62901.zip
Heavily reworked the networking for the various virtual machines:
There will be three types of network interfaces for virtual machines available all will be configured for every type of virtualization tool a) br0 is the direct host bridge into the local LAN (br0 already exists) vmnet0 for VMware vboxnet0 for VirtualBox kvmnet0* for Qemu/KVM b) nat1 is an internal bridge which "NATes" into the local LAN (with DHCP) vmnet1 for VMware vboxnet1 for VirtualBox kvmnet1* for Qemu/KVM c) vsw2 is an internal host bridge to connect software defined LANs to vmnet2 for VMware vboxnet2 for VirtualBox kvmnet2* for Qemu/KVM
Diffstat (limited to 'remote/modules/vbox/data/opt/openslx/etc')
-rwxr-xr-xremote/modules/vbox/data/opt/openslx/etc/virtualbox/run-virt.include642
-rw-r--r--remote/modules/vbox/data/opt/openslx/etc/virtualbox/virtualbox.conf2
2 files changed, 0 insertions, 644 deletions
diff --git a/remote/modules/vbox/data/opt/openslx/etc/virtualbox/run-virt.include b/remote/modules/vbox/data/opt/openslx/etc/virtualbox/run-virt.include
deleted file mode 100755
index b755133f..00000000
--- a/remote/modules/vbox/data/opt/openslx/etc/virtualbox/run-virt.include
+++ /dev/null
@@ -1,642 +0,0 @@
-# run-virt.include
-# -----------------------------------------------------------------------------
-# Copyright (c) 2009..2012 - RZ Uni Freiburg
-# Copyright (c) 2009..2013 - OpenSLX GmbH
-#
-# This program is free software distributed under the GPL version 2.
-# See http://openslx.org/COPYING
-#
-# If you have any feedback please consult http://openslx.org/feedback and
-# send your suggestions, praise, or complaints to feedback@openslx.org
-#
-# General information about OpenSLX can be found at http://openslx.org/
-# -----------------------------------------------------------------------------
-# run-virt.include
-# - component for vmware/player of the vmchooser plugin run-virt.sh
-################################################################################
-
-# configuration writer functions
-################################################################################
-
-function clean_string ()
-{
- if [ "$#" -ge 1 ]; then
- echo "$@" | tr '[A-Z]' '[a-z]' | tr -d '\t _./'
- else
- cat - | tr '[A-Z]' '[a-z]' | tr -d '\t _./'
- fi
-}
-
-vmostype=$(clean_string "$vmostype")
-
-runvmwareconfheader ()
-{
- echo "# This configuration file was generated by $0" > "$conffile"
-
- MAXMEM="9999999"
- MAXCORES="256"
-
- # check for the ostype
- # 1) memory limits
- case "$vmostype" in
- win31*|windows31*)
- MAXMEM="32"
- vmostype="win31"
- ;;
- winnt*|windowsnt*)
- MAXMEM="1000"
- vmostype="winnt"
- ;;
- win95*|windows95*)
- MAXMEM="96"
- vmostype="win95"
- ;;
- win98*|windows98*)
- MAXMEM="384"
- vmostype="win98"
- ;;
- winme*|windowsme*)
- MAXMEM="384"
- vmostype="winme"
- ;;
- win2000|windows2000|win2000pro*)
- MAXMEM="4000"
- vmostype="win2000pro"
- ;;
- win2000srv*|windows2000srv*|win2000serv*|windows2000serv*)
- MAXMEM="4000"
- vmostype="win2000serv"
- ;;
- win2000adv*|windows2000adv*|win2000dat*|windows2000dat*)
- MAXMEM="8000"
- vmostype="win2000advserv"
- ;;
- winnet*64|win*2003*64|windowsnet*64)
- MAXMEM="8000"
- vmostype="winnetstandard-64"
- ;;
- winnet*|win*2003*|windowsnet*)
- MAXMEM="4000"
- vmostype="winnetstandard"
- ;;
- winxphome*|windowsxphome*)
- MAXMEM="4000"
- vmostype="winxphome"
- ;;
- winxp*64|windowsxp*64)
- MAXMEM="8000"
- vmostype="winxppro-64"
- ;;
- winxp*|windowsxp*)
- MAXMEM="4000"
- vmostype="winxppro"
- ;;
- winvista*64|windowsvista*64)
- MAXMEM="16000"
- vmostype="winvista-64"
- ;;
- winvista*|windowsvista*)
- MAXMEM="8000"
- vmostype="winvista"
- ;;
- win7*64|windows7*64)
- MAXMEM="32000"
- vmostype="windows7-64"
- ;;
- win7*|windows7*)
- MAXMEM="8000"
- vmostype="windows7"
- ;;
- win*64)
- MAXMEM="16000"
- ;;
- win*)
- MAXMEM="8000"
- ;;
- dos|msdos*|ms-dos*)
- MAXMEM="128"
- vmostype="dos"
- ;;
- *64)
- MAXMEM="123456"
- ;;
- *)
- MAXMEM="8000"
- ;;
- esac
-
- # 2) other hardware + capabilities
- shfolders="FALSE"
- case "$vmostype" in
- win31)
- MAXCORES="1"
- sound="sb16"
- ;;
- winnt)
- MAXCORES="2"
- sound="sb16"
- ;;
- win95|win98|winme)
- MAXCORES="1"
- ;;
- win2000pro) # Don't know if Win 2000 supports shared folders, disabled to be safe
- MAXCORES="2"
- ;;
- win2000serv)
- MAXCORES="4"
- ;;
- win2000advserv)
- MAXCORES="8"
- ;;
- winxphome)
- MAXCORES="1"
- shfolders="TRUE"
- ;;
- winxp*|winvista*|windows7*)
- shfolders="TRUE"
- ;;
- winnet*)
- shfolders="TRUE"
- ;;
- linux*|ubuntu*|suse*|debian*)
- shfolders="TRUE"
- ;;
- macos*64)
- MAXCORES="2"
- vmostype="freebsd-64"
- ;;
- macos*)
- MAXCORES="1"
- vmostype="freebsd"
- ;;
- beos*)
- vmostype="other"
- ;;
- # Unknown guestOS setting in .xml - use conservative defaults
- *64)
- vmostype="other-64"
- ;;
- *)
- vmostype="other"
- ;;
- esac
-
- svga_autodetect="TRUE"
-
- real_core_count="$cpu_cores"
- [ "$cpu_cores" -gt "$MAXCORES" ] && cpu_cores="$MAXCORES"
- # It currently makes no sense to set the virtual number of cores
- # to a different value than the virtual number of cores per virtual CPU.
- cores_per_socket="$cpu_cores"
-
- if [ "x$shfolders" != "xFALSE" ]; then
- ENABLE_SHARE='sharedFolder.option = "alwaysEnabled"'
- else
- ENABLE_SHARE=''
- fi
-
- [ "$mem" -ge "$MAXMEM" ] && mem="$MAXMEM"
- [ "$hwver" -lt "7" -a "$mem" -gt "3500" ] && mem="3500"
-
- cap3d="WHAT IS THIS VAR USED FOR?" # helper var for loging output
-
- cat >> "$conffile" <<HEREEND
-.encoding = "UTF-8"
-config.version = "8"
-
-# general hardware (ehci, 3d accel)
-ehci.present = "TRUE"
-$FORCE3D
-mks.enable3d = "$enable3d"
-
-monitor.virtual_mmu = "automatic"
-monitor.virtual_exec = "automatic"
-floppy1.clientDevice = "FALSE"
-floppy1.readonly = "TRUE"
-
-# id
-virtualHW.version = "$hwver"
-displayName = "$displayname"
-guestOS = "$vmostype"
-
-# CPU/MEM
-numvcpus = "$cpu_cores"
-cpuid.coresPerSocket = "$cores_per_socket"
-maxvcpus = "$real_core_count"
-memsize = "$mem"
-MemAllowAutoScaleDown = "FALSE"
-MemTrimRate = "-1"
-
-# ide-disks
-ide0:0.present = "$ide"
-ide0:0.fileName = "$vm_diskfile"
-## Edited for persistent mode.
-ide0:0.mode = "independent-${diskmode}"
-##
-ide1:0.present = "$cdrom0"
-ide1:0.autodetect = "TRUE"
-ide1:0.fileName = "auto detect"
-ide1:0.deviceType = "cdrom-raw"
-ide1:1.present = "$cdrom1"
-ide1:1.autodetect = "TRUE"
-ide1:1.fileName = "auto detect"
-ide1:1.deviceType = "cdrom-raw"
-
-# scsi-disks
-scsi0.present = "$scsi"
-scsi0:0.present = "$scsi"
-scsi0:0.fileName = "$vm_diskfile"
-scsi0.virtualDev = "$hddrv"
-## Edited for persistent mode.
-scsi0:0.mode = "independent-${diskmode}"$stateFileConfiguration
-##
-
-# floppies
-floppy0.present = "$floppy0"
-floppy0.startConnected = "FALSE"
-floppy0.autodetect = "TRUE"
-floppy0.fileName = "auto detect"
-
-# we need floppy b: for our windows client configuration
-floppy1.present = "$floppy1"
-floppy1.startConnected = "TRUE"
-floppy1.fileType = "file"
-floppy1.fileName = "$floppy1name"
-
-# nics
-ethernet0.present = "TRUE"
-ethernet0.addressType = "static"
-$network_virtualDev
-ethernet0.connectionType = "$network_kind"
-#ethernet1.connectionType = "custom"
-#ethernet1.vnet = "/dev/vmnet2"
-ethernet0.address = "00:50:56:$macaddrsuffix"
-ethernet0.wakeOnPcktRcv = "FALSE"
-
-# sound
-sound.present = "TRUE"
-sound.fileName = "-1"
-sound.autodetect = "TRUE"
-sound.virtualdev = "$sound"
-
-# svga
-svga.autodetect = "$svga_autodetect"
-
-# usb
-usb.present = "TRUE"
-usb.generic.autoconnect = "TRUE"
-
-# pci configuration
-usb.pciSlotNumber = "16"
-ethernet0.pciSlotNumber = "17"
-sound.pciSlotNumber = "18"
-ehci.pciSlotNumber = "19"
-scsi0.pciSlotNumber = "20"
-
-# shared folders
-$ENABLE_SHARE
-sharedFolder0.present = "$shfolders"
-sharedFolder0.enabled = "$shfolders"
-sharedFolder0.expiration = "never"
-sharedFolder0.guestName = "$sharename"
-sharedFolder0.hostPath = "$sharepath"
-sharedFolder0.readAccess = "TRUE"
-sharedFolder0.writeAccess = "TRUE"
-sharedFolder.maxNum = "1"
-
-# dirs/configs
-tmpDirectory = "$redodir"
-redoLogDir = "$redodir"
-mainMem.useNamedFile = "TRUE"
-snapshot.disabled = "TRUE"
-tools.syncTime = "TRUE"
-isolation.tools.hgfs.disable = "FALSE"
-hgfs.mapRootShare = "TRUE"
-isolation.tools.dnd.disable = "FALSE"
-isolation.tools.copy.enable = "TRUE"
-isolation.tools.paste.enabled = "TRUE"
-
-# serial port
-serial0.present = "$serial"
-$serialdev
-
-# parallel port
-parallel0.present = "$parallel"
-parallel0.bidirectional = "$paralbidi"
-$paraldev
-HEREEND
-
- # set the appropriate permissions for the vmware config file
- chmod u+rwx ${conffile} >/dev/null 2>&1
-}
-
-preferencesheader ()
-{
- cat > "$vmhome/preferences" <<HEREEND
-.encoding = "UTF-8"
-# This configuration file was generated by $0
-
-# updates/tips
-webUpdate.enabled = "FALSE"
-pref.downloadPermission = "deny"
-pref.vmplayer.downloadPermission = "deny"
-pref.vmplayer.webUpdateOnStartup = "FALSE"
-pref.tip.startup = "FALSE"
-hints.hideAll = "TRUE"
-hint.vmui.showAllUSBDevs = "FALSE"
-
-# configs
-prefvmx.defaultVMPath = "$vmhome"
-prefvmx.mru.config = "$conffile:"
-
-# hot keys
-pref.hotkey.control = "true"
-pref.hotkey.alt = "true"
-pref.hotkey.shift = "true"
-pref.hotkey.gui = "true"
-gui.restricted = "true"
-
-# fullscreen/mouse/keyboard
-pref.fullscreen.toolbarPixels = "0"
-pref.vmplayer.fullscreen.autohide = "TRUE"
-pref.grabOnMouseClick = "TRUE"
-pref.grabOnKeyPress = "FALSE"
-pref.motionGrab = "TRUE"
-pref.motionUngrab = "TRUE"
-pref.hideCursorOnUngrab = "TRUE"
-pref.autoFit = "TRUE"
-pref.autoFitFullScreen = "fitGuestToHost"
-pref.vmplayer.exit.vmAction = "poweroff"
-pref.vmplayer.confirmOnExit = "TRUE"
-
-# shared folders
-pref.enableAllSharedFolders = "TRUE"
-
-# eula
-
-HEREEND
-
- # different eula parameters from Workstation 9+/ Player 5+
- case "$vmversion" in
- 3.*|4.*|7.*|8.*)
- cat >> "$vmhome/preferences" <<HEREEND
-pref.eula.size = "2"
-pref.eula.0.appName = "VMware Player"
-pref.eula.0.buildNumber = "$vmbuild"
-pref.eula.1.appName = "VMware Workstation"
-pref.eula.1.buildNumber = "$vmbuild"
-HEREEND
- ;;
- 5.*|9.*)
- # code
- cat >> "$vmhome/preferences" <<HEREEND
-pref.eula.count = "2"
-pref.eula0.product = "VMware Player"
-pref.eula0.build = "$vmbuild"
-pref.eula1.product = "VMware Workstation"
-pref.eula1.build = "$vmbuild"
-HEREEND
- ;;
- esac
-
-}
-
-
-# declaration of default variables
-################################################################################
-
-
-[ "$mem" -gt 3800 -a "$(uname -m)" != "x86_64" ] && mem=3800
-
-# VM-ID static (0D), remove if changed to 00
-VM_ID="0D"
-# should be dynamic
-if [ "x$(which bc)" != "x" ]; then
- VM_ID=$(echo "obase=16; $$" | bc)
- VM_ID=$(expr substr $VM_ID $(expr ${#VM_ID} - 1) 2)
-else
- VM_ID=$[ $$ % 100 ]
-fi
-# temporary disk space for logs, etc...
-redodir=/tmp/vmware/${USER}.$$
-# dir for configs and vmem file
-confdir=/tmp/vmware/${USER}.$$
-# configfile
-conffile="${confdir}/run-vmware.conf"
-# diskfile
-diskfile="${vmpath}"
-# users vmware config folder
-vmhome="${HOME}/.vmware"
-
-# get several version infos for vmware/player
-. /opt/openslx/etc/vmware/vmware.conf
-vmbuild=$buildversion
-vmversion=$version
-
-# VMware start options
-# "-X": start in fullscreen
-vmopt="-X"
-
-
-# hardware checks
-################################################################################
-
-# use different network card (default e1000, vlance, vmxnet)
-if [ -n "${network_card}" ]; then
- network_virtualDev="ethernet0.virtualDev = \"${network_card}\""
-else
- network_virtualDev='# using default virtualDev for ethernet0'
-fi
-
-# set standard sound card, overwrite depending on OS (options sb16, es1371, hdaudio)
-sound="es1371"
-
-# check for 3D configuration setting
-case "$(clean_string "$enable3d")" in
- true|yes)
- enable3d="TRUE"
- ;;
- *)
- enable3d="FALSE"
- ;;
-esac
-
-# check for whitelisted HW-3D
-. /opt/openslx/config
-FORCE3D=""
-if [ -n "$SLX_VMWARE_3D" ]; then
- FORCE3D='mks.gl.allowBlacklistedDrivers = "TRUE"'
-fi
-
-# serial/parallel port defined (e.g. "ttyS0, lp0" or "autodetect")
-case "$serial" in
- tty*)
- if [ -e "/dev/$serial" ]; then
- serialdev="serial0.filename = \"/dev/${serial}\""
- serial="TRUE"
- else
- serialdev="# no serial port configured"
- serial="FALSE"
- fi
- ;;
- auto*)
- serialdev="serial0.autodetect = \"TRUE\""
- serial="TRUE"
- ;;
- *)
- serialdev="# no serial port configured"
- serial="FALSE"
- ;;
-esac
-
-case "$parallel" in
- lp*|parport*)
- if [ -e "/dev/$parallel" ]; then
- paraldev="parallel0.filename = \"/dev/${parallel}\""
- paralbidi="TRUE"
- parallel="TRUE"
- else
- paraldev="# no parallel port configured"
- paralbidi="FALSE"
- parallel="FALSE"
- fi
- ;;
- auto*)
- paraldev="parallel0.autodetect = \"TRUE\""
- paralbidi="TRUE"
- parallel="TRUE"
- ;;
- *)
- paraldev="# no parallel port configured"
- paralbidi="FALSE"
- parallel="FALSE"
- ;;
-esac
-
-# check if ide/scsi and hwver of image
-# read only the first 30 lines to be sure
-imghead=$(head -n 30 "${diskfile}")
-## Added to handle persistent snapshots.
-if [[ "$originalVMDKFilePath" ]]; then
- echo "Select \"${originalVMDKFilePath}\" as information base for \"${diskfile}\"."
- imghead=$(head -n 30 "$originalVMDKFilePath") && \
- # Support suspend mode.
- stateFilePath="$(readlink -f "$(dirname "$diskfile")/"*.vmss)" && \
- if [ -f "$stateFilePath" ]; then
- echo "Found state file \"$stateFilePath\"." && \
- stateFileConfiguration="
-checkpoint.vmState = \"$stateFilePath\""
- fi
- POSTRUN="stateFilePath=\"\$(readlink -f \"${confdir}/\"*.vmss)\" && memoryFilePath=\"\$(readlink -f \"${confdir}/\"*.vmem)\" && [ -f \"\$stateFilePath\" ] && echo \"Saving state and memory file \\\"\$stateFilePath\\\" and \\\"\$memoryFilePath\\\".\" && mv -f \"\$stateFilePath\" \"$(dirname "$diskfile")/\" && mv -f \"\$memoryFilePath\" \"$(dirname "$diskfile")/\""
-fi
-##
-hddrv=$(echo "${imghead}" | grep -m1 -ia "ddb.adapterType" | awk -F '"' '{print $2}')
-hwver=$(echo "${imghead}" | grep -m1 -ia "ddb.virtualHWVersion" | awk -F '"' '{print $2}')
-case "${hddrv}" in
- ide)
- ide="TRUE"
- scsi="FALSE"
- ;;
- lsilogic|buslogic)
- ide="FALSE"
- scsi="TRUE"
- ;;
-esac
-
-# write configuration files
-################################################################################
-
-# create vmware directories
-mkdir -p "$redodir" >/dev/null 2>&1
-mkdir -p "$confdir" >/dev/null 2>&1
-mkdir -p "$vmhome/dndlogs" >/dev/null 2>&1
-touch "$vmhome/dndlogs/dndlog.conf" >/dev/null 2>&1
-
-# create preferences
-preferencesheader
-
-# create VMware startup file
-runvmwareconfheader
-
-# link to conffile if confdir != redodir
-ln -s "$conffile" "$redodir/run-vmware.conf" >/dev/null 2>&1
-
-# sync is needed to ensure that data is really written to virtual disk
-sync
-
-# own nvram. We need it for floppy drive b, default nvram has just drive a
-# TODO: optimize, currently kinda inefficient, too much copys, but we
-# don't know which one is installed...
-cp "/opt/openslx/etc/vmware/nvram" "$confdir/nvram" 2>/dev/null
-
-
-# logging and stdout
-################################################################################
-
-# log script information
-writelog "# File created by $0 (VMversion ${vmversion})\n# on $(date)\n"
-## Edited for persistent mode.
-writelog "Starting with ${diskmode} mode ...\n"
-##
-
-# write all results to logfile
-# log disksetup
-writelog "Directories:"
-writelog "\tConfdir:\t${confdir}"
-writelog "\tConffile:\t${conffile}"
-writelog "\tRedodir:\t${redodir}"
-writelog "\tVMhome:\t\t${vmhome}"
-writelog "\t/tmp info: \
-$(grep "/tmp " /proc/mounts) $(df -h | grep " /tmp$" | awk '{print $2}')"
-# hw setup
-writelog "Hardware:"
-writelog "\tMAC:\t\t00:50:56:${VM_ID}:${machostpart}"
-if [ -n "${network_card}" ]; then
- writelog "\tNet Adaptor:\t${network_card}"
-fi
-writelog "\tMem:\t\t${mem} MB"
-# echo nur wenn hostmem gesetzt
-[ -n "${hostmem}" ] && writelog "\tHostmem:\t${hostmem} MB"
-writelog "\tMax. res.:\t${xres}x${yres}"
-writelog "\tCD-ROM1:\t${cdrom0}"
-writelog "\tCD-ROM2:\t${cdrom1}"
-writelog "\tFloppy_A:\t${floppy0}"
-if [ "${serial}" = "TRUE" ]; then
- writelog "\tSerial Port:\t${serialdev}"
-fi
-if [ "${parallel}" = "TRUE" ]; then
- writelog "\tParallel Port:\t${paraldev}"
-fi
-# image
-writelog "Diskimage:"
-writelog "\tDiskfile:\t${diskfile}"
-writelog "\tDisktype:\t${hddrv}"
-writelog "\tHWVersion:\t${hwver}"
-writelog "\tVMostype:\t${vmostype}"
-# misc
-writelog "Misc:"
-writelog "\tDisplayname:\t${displayname}"
-if [ "${cap3d}" = "TRUE" -a "${enable3d}" = "TRUE" ]; then
- writelog "\t3D Graphics:\tenabled"
-fi
-# empty line at end
-writelog ""
-
-
-# finally set env for run-virt.sh
-################################################################################
-
-# configure and start samba service to provide user's home directory
-#if [ -f /usr/sbin/smbd ] ; then
-# sudo /opt/openslx/bin/sed -i /etc/vmware/smb.conf -e "s,USER,$USER,"
-# sudo /usr/sbin/nmbd -s /etc/vmware/smb.conf
-# sudo /usr/sbin/smbd -s /etc/vmware/smb.conf
-#fi
-
-# For debugging
-cp "$conffile" "/tmp/vmware-last-config"
-
-# using the modified version of the wrapper script
-VIRTCMD="/opt/openslx/bin/vmplayer"
-VIRTCMDOPTS="${vmopt} ${conffile}"
-RMDIRS="${redodir} ${conffile}"
diff --git a/remote/modules/vbox/data/opt/openslx/etc/virtualbox/virtualbox.conf b/remote/modules/vbox/data/opt/openslx/etc/virtualbox/virtualbox.conf
deleted file mode 100644
index 8a7a58e4..00000000
--- a/remote/modules/vbox/data/opt/openslx/etc/virtualbox/virtualbox.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-# Todo: Good setting
-export VBOX_USER_HOME=""