diff options
Diffstat (limited to 'os-plugins/plugins/virtualbox')
-rw-r--r-- | os-plugins/plugins/virtualbox/OpenSLX/Distro/Base.pm | 59 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/OpenSLX/Distro/Debian.pm | 52 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/OpenSLX/Distro/Suse.pm | 48 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/OpenSLX/Distro/Ubuntu.pm | 54 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/OpenSLX/OSPlugin/virtualbox.pm | 284 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/XX_virtualbox.sh | 98 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz | bin | 282 -> 0 bytes | |||
-rw-r--r-- | os-plugins/plugins/virtualbox/files/machine.include | 132 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/files/run-virt.include | 372 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/files/rwimg.vdi.gz | bin | 268 -> 0 bytes | |||
-rw-r--r-- | os-plugins/plugins/virtualbox/files/virtualbox.include | 47 | ||||
-rw-r--r-- | os-plugins/plugins/virtualbox/init-hooks/20-nw-bridge-config/bridge.sh | 30 |
12 files changed, 0 insertions, 1176 deletions
diff --git a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Base.pm b/os-plugins/plugins/virtualbox/OpenSLX/Distro/Base.pm deleted file mode 100644 index d26cdfcc..00000000 --- a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Base.pm +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (c) 2009 - 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/ -# ----------------------------------------------------------------------------- -# virtualbox/OpenSLX/Distro/Base.pm -# - provides base implementation of the Distro API for the VirtualBox plugin. -# ----------------------------------------------------------------------------- -package virtualbox::OpenSLX::Distro::Base; - -use strict; -use warnings; - -our $VERSION = 1.01; # API-version . implementation-version - -use Scalar::Util qw( weaken ); - -use OpenSLX::Basics; -use OpenSLX::Utils; - -################################################################################ -### interface methods -################################################################################ -sub new -{ - my $class = shift; - my $self = {}; - return bless $self, $class; - -} - -sub initialize -{ - my $self = shift; - $self->{engine} = shift; - weaken($self->{engine}); - # avoid circular reference between plugin and its engine - - return 1; -} - -sub installVbox -{ - my $self = shift; - - my $engine = $self->{'engine'}; - - # lets try it... we can't loose anything :) - $engine->installPackages('virtualbox-ose'); - - return; -} - -1; diff --git a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Debian.pm b/os-plugins/plugins/virtualbox/OpenSLX/Distro/Debian.pm deleted file mode 100644 index edd117ca..00000000 --- a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Debian.pm +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright (c) 2009 - 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/ -# ----------------------------------------------------------------------------- -# virtualbox/OpenSLX/Distro/debian.pm -# - provides Debian-specific overrides of the Distro API for the VirtualBox -# plugin. -# ----------------------------------------------------------------------------- -package virtualbox::OpenSLX::Distro::Debian; - -use strict; -use warnings; - -use base qw(virtualbox::OpenSLX::Distro::Base); - -use OpenSLX::Basics; -use OpenSLX::Utils; - -################################################################################ -### interface methods -################################################################################ - -sub installVbox -{ - my $self = shift; - - my $engine = $self->{'engine'}; - my $release = `lsb_release -rs`; - chomp($release); - - # lenny(5.0) has v1.6 - # testing is ok. but no clue which lsb_release -rs it has... - if ( $release eq "999999.0") { - #the usual "in stage1 chroot we get another kernel vers. problem" - # kernel modules need to be installed from the cloned system - #$engine->installPackages('virtualbox-ose'); - #system('/etc/init.d/virtualbox-ose setup'); - } else { - print "Couldn't install VirtualBox, no package from distribution\n"; - exit; - } - - return; -} - -1; diff --git a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Suse.pm b/os-plugins/plugins/virtualbox/OpenSLX/Distro/Suse.pm deleted file mode 100644 index 9af3191e..00000000 --- a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Suse.pm +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright (c) 2009 - 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/ -# ----------------------------------------------------------------------------- -# virtualbox/OpenSLX/Distro/Suse.pm -# - provides SUSE specific overrides of the distro API for the VirtualBox -# plugin. -# ----------------------------------------------------------------------------- -package virtualbox::OpenSLX::Distro::Suse; - -use strict; -use warnings; - -use base qw(virtualbox::OpenSLX::Distro::Base); - -use OpenSLX::Basics; -use OpenSLX::Utils; - -################################################################################ -### interface methods -################################################################################ - -sub installVbox -{ - my $self = shift; - - my $engine = $self->{'engine'}; - # should be replaced by proper function - my $release = `lsb_release -rs`; - chomp($release); - - if ( $release eq "11.1" || $release eq "11.0" || $release eq "10.3") { - $engine->installPackages('virtualbox-ose'); - } else { - print "Couldn't install VirtualBox, no package from distribution\n"; - exit; - } - - return; -} - -1; diff --git a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Ubuntu.pm b/os-plugins/plugins/virtualbox/OpenSLX/Distro/Ubuntu.pm deleted file mode 100644 index 44695680..00000000 --- a/os-plugins/plugins/virtualbox/OpenSLX/Distro/Ubuntu.pm +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (c) 2008 - 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/ -# ----------------------------------------------------------------------------- -# virtualbox/OpenSLX/Distro/Ubuntu.pm -# - provides Ubuntu-specific overrides of the Distro API for the virtualbox -# plugin. -# ----------------------------------------------------------------------------- -package virtualbox::OpenSLX::Distro::Ubuntu; - -use strict; -use warnings; - -# inherit everything from Debian (as Ubuntu is based on it anyway) -use base qw(virtualbox::OpenSLX::Distro::Debian); -use base qw(virtualbox::OpenSLX::Distro::Base); - -use OpenSLX::Basics; -use OpenSLX::Utils; - - -################################################################################ -#### interface methods -################################################################################ -sub installVbox -{ - my $self = shift; - - my $engine = $self->{'engine'}; - my $release = `lsb_release -rs`; - chomp($release); - - # hardy (8.04LTS): only version VBox v1.5 - if ( $release eq "8.10" || $release eq "9.04") { - #the usual "in stage1 chroot we get another kernel vers. problem" - # kernel modules need to be installed from the cloned system - #$engine->installPackages("virtualbox-ose"); - #system('/etc/init.d/virtualbox-ose setup'); - } else { - print "Couldn't install VirtualBox, no package from distribution!\n"; - exit; - } - - - return; -} - -1; diff --git a/os-plugins/plugins/virtualbox/OpenSLX/OSPlugin/virtualbox.pm b/os-plugins/plugins/virtualbox/OpenSLX/OSPlugin/virtualbox.pm deleted file mode 100644 index 07ec9dc0..00000000 --- a/os-plugins/plugins/virtualbox/OpenSLX/OSPlugin/virtualbox.pm +++ /dev/null @@ -1,284 +0,0 @@ -# Copyright (c) 2009..2010 - RZ Uni Freiburg -# Copyright (c) 2009..2010 - 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/ -# ----------------------------------------------------------------------------- -# virtualbox.pm -# - declares necessary information for the virtualbox plugin -# ----------------------------------------------------------------------------- -package OpenSLX::OSPlugin::virtualbox; - -use strict; -use warnings; - -use base qw(OpenSLX::OSPlugin::Base); - -use File::Basename; -use File::Path; - -use OpenSLX::Basics; -use OpenSLX::Utils; -use OpenSLX::DistroUtils; - -sub new -{ - my $class = shift; - my $self = { - name => 'virtualbox', - }; - - return bless $self, $class; -} - -sub getInfo -{ - my $self = shift; - - return { - description => unshiftHereDoc(<<' End-of-Here'), - Module for enabling services for the VirtualBox on an OpenSLX - stateless client. - End-of-Here - precedence => 70, - # headless mode does not require a desktop! - #required => [ qw( desktop ) ], - }; -} - -sub getAttrInfo -{ - # Returns a hash-ref with information about all attributes supported - # by this specific plugin - my $self = shift; - - # This default configuration will be added as attributes to the default - # system, such that it can be overruled for any specific system by means - # of slxconfig. - return { - # attribute 'active' is mandatory for all plugins - 'virtualbox::active' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - should the 'virtualbox'-plugin be executed during boot? - End-of-Here - content_regex => qr{^(0|1)$}, - content_descr => '1 for active, 0 for inactive', - default => '1', - }, - # attribute 'imagesrc' defines where we can find virtualbox images - 'virtualbox::imagesrc' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Where do we store our virtualbox images? NFS? Filesystem? - End-of-Here - content_regex => qr{^(/|nfs://)}, - content_descr => 'local path or URI or "-" (unset)', - default => undef, - }, - # attribute 'bridge' defines if bridged network mode should be - # switched on - # TODO: change to net -> nat, bridge, hostonly? - # TODO: since we use def in XML maybe use to override - 'virtualbox::bridge' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Should the bridging (direct access of the virtualbox clients - to the ethernet the host is connected to) be enabled - End-of-Here - content_regex => qr{^(0|1)$}, - content_descr => '0 or 1', - default => '1', - }, - # attribute 'mem' defines if memory should be forced - 'virtualbox::mem' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Do you want to force a ralative amount of RAM? - (Not implemented right now!) - End-of-Here - content_regex => qr{^(\d\d??)$}, - content_descr => 'Between 0 - 99', - default => undef, - }, - # attribute 'kvm' defines if KVM modules should be forced - 'virtualbox::kvm' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Do you want to force the usage of KVM modules where applicable? - (Not implemented right now!) - End-of-Here - content_regex => qr{^(0|1)$}, - content_descr => '0 or 1', - default => undef, - }, - # attribute 'tftpdir' defines TFTP dir for network boots /w NAT - 'virtualbox::tftpdir' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Do you want to define a stage 4 TFTP dir for netwoork boots when - using NAT? - Hint: Mount your TFTP ro via NFS to a local dir - End-of-Here - content_regex => qr{^(/)}, - content_descr => 'local path or "-" (unset)', - default => '/var/lib/virt/virtualbox', - }, - }; -} - -sub installationPhase -{ - my $self = shift; - my $info = shift; - - $self->{pluginRepositoryPath} = $info->{'plugin-repo-path'}; - $self->{pluginTempPath} = $info->{'plugin-temp-path'}; - $self->{openslxBasePath} = $info->{'openslx-base-path'}; - $self->{openslxConfigPath} = $info->{'openslx-config-path'}; - $self->{attrs} = $info->{'plugin-attrs'}; - - my $engine = $self->{'os-plugin-engine'}; - - # Different names of the tool (should be unified somehow!?) - if (!isInPath('VirtualBox')) { - # todo: fix this - $self->{distro}->installVbox(); - } - if (!isInPath('VirtualBox')) { - print - "VirtualBox is not installed. VirtualBox Plugin won't be installed!\n" - ; - #exit - } - - $self->_writeRunlevelScript(); - - # Copy run-virt.include and template files to the appropriate place for - # inclusion in stage4 - my $pluginName = $self->{'name'}; - my $pluginBasePath = - "$self->{openslxBasePath}/lib/plugins/$pluginName/files"; - foreach my $file ( qw( run-virt.include virtualbox.include machine.include - empty-diff.vdi.gz rwimg.vdi.gz ) ) { - copyFile("$pluginBasePath/$file", "$self->{pluginRepositoryPath}/"); - chmod 0644, "$self->{pluginRepositoryPath}/$file"; - } - - return; -} - -sub removalPhase -{ - my $self = shift; - my $info = shift; - - return; -} - -sub checkStage3AttrValues -{ - my $self = shift; - my $stage3Attrs = shift; - my $vendorOSAttrs = shift; - #my @problems; - - #my $vmimg = $stage3Attrs->{'virtualbox::imagesrc'} || ''; - - return; -} - -# Write the runlevelscript -sub _writeRunlevelScript -{ - my $self = shift; - my $initfile = newInitFile(); - my $script = ""; - - $initfile->setName("vbox-slx"); - $initfile->setDesc("Setup environment for virtualbox. Part of OpenSLX virtualbox plugin."); - - # todo: Function need to be formated proper... not important right now - $initfile->addFunction( - 'running', - 'lsmod | grep -q "$1[^_-]"' - ); - # - $script = unshiftHereDoc(<<' End-of-Here'); - if running vboxdrv; then - if running vboxnetflt; then - echo "VirtualBox kernel modules (vboxdrv and vboxnetflt) are loaded." - else - echo "VirtualBox kernel module is loaded." - fi - #TODO: check it: ignore user check. handling our own way: - for i in /tmp/.vbox-*-ipc; do - echo "Running: " - $(VBoxManage -q list runningvms | sed -e 's/^".*"//' 2>/dev/null) - done - else - echo "VirtualBox kernel module(s) are not loaded." - fi - End-of-Here - $initfile->addFunction( - "vmstatus", - "$script" - ); - $initfile->addFunction( - 'start', - ' modprobe -qa vboxdrv vboxnetflt vboxnetadp', - ); - $initfile->addFunction( - 'stop', - ' rmmod vboxnetadp vboxnetflt vboxdrv', - ); - $initfile->addToCase( - 'start', - 'start' - ); - $initfile->addToCase( - 'stop', - 'stop' - ); - $initfile->addToCase( - 'status', - 'vmstatus' - ); - $initfile->addToCase( - 'restart', - 'stop && start' - ); - - # get distro version - my $distro = (split('-',$self->{'os-plugin-engine'}->distroName()))[0]; - my $runlevelscript = getInitFileForDistro($initfile, $distro); - - spitFile("$self->{'pluginRepositoryPath'}/vbox-slx", $runlevelscript); -} - -# The bridge configuration needs the bridge module to be present in early -# stage3 -sub suggestAdditionalKernelModules -{ - my $self = shift; - my $makeInitRamFSEngine = shift; - - my @suggestedModules; - - push @suggestedModules, qw( bridge ); - - return @suggestedModules; -} - -1; diff --git a/os-plugins/plugins/virtualbox/XX_virtualbox.sh b/os-plugins/plugins/virtualbox/XX_virtualbox.sh deleted file mode 100644 index b54b4bec..00000000 --- a/os-plugins/plugins/virtualbox/XX_virtualbox.sh +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright (c) 2009..2010 - RZ Uni Freiburg -# Copyright (c) 2009..2010 - OpenSLX GmbH -# -# This program/file 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 feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# -# script is included from init via the "." load function - thus it has all -# variables and functions available - -# include default directories -. /etc/openslx.conf - -CONFFILE=/initramfs/plugin-conf/virtualbox.conf -PLUGINCONFDIR=/mnt/${OPENSLX_DEFAULT_CONFDIR}/plugins/virtualbox -PLUGINDIR=/mnt/${OPENSLX_DEFAULT_DIR}/plugin-repo/virtualbox -VIRTDIR=/mnt/${OPENSLX_DEFAULT_VIRTDIR}/virtualbox - -# check if the configuration file is available -if [ -e ${CONFFILE} ]; then - - # load needed variables - . ${CONFFILE} - - # Test if this plugin is activated... more or less useless with the - # new plugin system - if [ $virtualbox_active -ne 0 2>/dev/null ]; then - - [ $DEBUGLEVEL -gt 0 ] && echo "executing the 'virtualbox' os-plugin ..."; - - # load general configuration - . /etc/initramfs-setup - - # get source of virtualbox image server (get type, server and path) - if strinstr "/" "${virtualbox_imagesrc}" ; then - vbimgprot=$(uri_token ${virtualbox_imagesrc} prot) - vbimgserv=$(uri_token ${virtualbox_imagesrc} server) - vbimgpath="$(uri_token ${virtualbox_imagesrc} path)" - fi - if [ -n "${vbimgserv}" ] ; then - # directory where qemu images are expected in - mnttarget=${VIRTDIR} - # mount the virtualbox image source readonly (ro) - fsmount ${vbimgprot} ${vbimgserv} ${vbimgpath} ${mnttarget} ro - else - [ $DEBUGLEVEL -gt 1 ] && \ - error " * Incomplete information in variable ${virtualbox_imagesrc}." \ - nonfatal - fi - - # copy virtualization include files to config dir - testmkd ${PLUGINCONFDIR} - cp ${PLUGINDIR}/*.include ${PLUGINCONFDIR} - # copy ${CONFFILE} to ${PLUGINCONFDIR} just in case - cp ${CONFFILE} ${PLUGINCONFDIR} - -# # TODO: create rawdisk if requested -# # create raw disk -# for part in $(grep -qE " 44 | 45 " /etc/disk.partition); do -# case "${part}" in -# * 45 *) -# id4x=$(grep " 45 " /etc/disk.partition | grep -E " 44 | 45 " \ -# | awk '{print $1}' | cut -c -8) -# break -# ;; -# * 44 *) -# id4x=$(grep " 44 " /etc/disk.partition | grep -E " 44 | 45 " \ -# | awk '{print $1}' | cut -c -8) -# break -# ;; -# esac -# if [ -n "${id4x}" ]; then -# mount --bind /dev /mnt/dev -# chroot /mnt VBoxManage -q internalcommands createrawvmdk -filename \ -# ${OPENSLX_DEFAULT_CONFDIR}/plugins/virtualbox/raw.vmdk -rawdisk ${id4x} -# chmod 777 ${OPENSLX_DEFAULT_CONFDIR}/plugins/virtualbox/raw.vmdk -# umount -f /mnt/dev 2>/dev/null -# fi - - # copy and activate init file - cp ${PLUGINDIR}/vbox-slx /mnt/etc/init.d/ - chmod 755 /mnt/etc/init.d/vbox-slx - rllinker "vbox-slx" 20 2 - - mknod -m 0660 /dev/vboxdrv c 10 59 - chown root:vboxusers /dev/vboxdrv - - # finished ... - [ $DEBUGLEVEL -gt 0 ] && echo "done with 'virtualbox' os-plugin ..." - fi -else - [ $DEBUGLEVEL -gt 0 ] \ - && echo " * Configuration of 'virtualbox' plugin failed" -fi diff --git a/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz Binary files differdeleted file mode 100644 index 24697b58..00000000 --- a/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz +++ /dev/null diff --git a/os-plugins/plugins/virtualbox/files/machine.include b/os-plugins/plugins/virtualbox/files/machine.include deleted file mode 100644 index 96acd7a2..00000000 --- a/os-plugins/plugins/virtualbox/files/machine.include +++ /dev/null @@ -1,132 +0,0 @@ -# Include file (machine template) for run-virt.include of the virtualbox plugin -cat << EOF > "${machconfig}" -<?xml version="1.0"?> -<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.9-linux"> - <Machine uuid="{${machineuuid}}" name="${vm_name}" OSType="${vmostype}"> - <ExtraData> - <ExtraDataItem name="GUI/AutoresizeGuest" value="on"/> - <ExtraDataItem name="GUI/Fullscreen" value="on"/> - <ExtraDataItem name="GUI/LastCloseAction" value="powerOff"/> - <ExtraDataItem name="GUI/MiniToolBarAlignment" value="top"/> - <ExtraDataItem name="GUI/MiniToolBarAutoHide" value="on"/> - <ExtraDataItem name="GUI/SaveMountedAtRuntime" value="yes"/> - <ExtraDataItem name="GUI/Seamless" value="off"/> - <ExtraDataItem name="GUI/ShowMiniToolBar" value="yes"/> - </ExtraData> - <Hardware version="2"> - <CPU count="${cpu_cores}"> - <HardwareVirtEx enabled="${enablevt}" exclusive="true"/> - <HardwareVirtExNestedPaging enabled="${npaging}"/> - <HardwareVirtExVPID enabled="false"/> - <PAE enabled="true"/> - </CPU> - <Memory RAMSize="${mem}"/> - <Boot> - <Order position="1" device="${boot}"/> <!-- HardDisk, DVD, Network, Floppy --> - <Order position="2" device="None"/> - <Order position="3" device="None"/> - <Order position="4" device="None"/> - </Boot> - <Display VRAMSize="24" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/> - <!-- authType="External", "Guest", "Null" --> - <RemoteDisplay enabled="false" port="${vrdpport}" authType="Null" authTimeout="5000"/> - <BIOS> - <ACPI enabled="true"/> - <IOAPIC enabled="true"/> - <Logo fadeIn="false" fadeOut="false" displayTime="0"/> - <BootMenu mode="MessageAndMenu"/> - <TimeOffset value="0"/> - <PXEDebug enabled="false"/> - </BIOS> - <USBController enabled="true" enabledEhci="true"/> - <Network> - <Adapter slot="0" enabled="true" MACAddress="${macaddr}" cable="true" speed="0" type="${vb_network_card}"> - <${network_kind}/> - </Adapter> - <Adapter slot="1" enabled="false" MACAddress="0800279312FB" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="2" enabled="false" MACAddress="080027A3A3CA" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="3" enabled="false" MACAddress="0800277356F6" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="4" enabled="false" MACAddress="080027CEA83A" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="5" enabled="false" MACAddress="0800271B8D7A" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="6" enabled="false" MACAddress="08002771BBD7" cable="true" speed="0" type="Am79C973"/> - <Adapter slot="7" enabled="false" MACAddress="080027EB6A12" cable="true" speed="0" type="Am79C973"/> - </Network> - <UART> - <Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/> - <Port slot="1" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/> - </UART> - <LPT> - <Port slot="0" enabled="false" IOBase="0x378" IRQ="4"/> - <Port slot="1" enabled="false" IOBase="0x378" IRQ="4"/> - </LPT> - <AudioAdapter controller="AC97" driver="Alsa" enabled="${audio}"/> <!-- OSS, Alsa, Pulse (HANGS!) --> - <SharedFolders> - <SharedFolder name="${sharename}" hostPath="${sharepath}" writable="true"/> - </SharedFolders> - <Clipboard mode="Bidirectional"/> - <Guest memoryBalloonSize="0" statisticsUpdateInterval="0"/> - <!-- - <GuestProperties> - <GuestProperty name="/VirtualBox/HostGuest/SysprepExec" value="" timestamp="1268140071072779000" flags="TRANSIENT, RDONLYGUEST"/> - <GuestProperty name="/VirtualBox/HostGuest/SysprepArgs" value="" timestamp="1268140071072939000" flags="TRANSIENT, RDONLYGUEST"/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/Product" value="Linux" timestamp="1268140265864540000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/Release" value="2.6.27.21" timestamp="1268140265894019000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/Version" value="#3 SMP Fri Feb 26 16:38:21 CET 2010" timestamp="1268140265898448000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/ServicePack" value="" timestamp="1268140265899571000" flags=""/> - <GuestProperty name="/VirtualBox/GuestAdd/Revision" value="57640" timestamp="1268140265900144000" flags=""/> - <GuestProperty name="/VirtualBox/GuestAdd/Version" value="3.1.4" timestamp="1268140265899937000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/LoggedInUsers" value="1" timestamp="1268164075148440000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/Count" value="4" timestamp="1268164075148790000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/0/V4/IP" value="132.230.4.224" timestamp="1268164075149053000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/0/V4/Broadcast" value="132.230.4.255" timestamp="1268164075149297000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/0/V4/Netmask" value="255.255.255.0" timestamp="1268164075149596000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/0/Status" value="Up" timestamp="1268164075149829000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/1/V4/IP" value="192.168.112.1" timestamp="1268164075150037000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/1/V4/Broadcast" value="192.168.112.255" timestamp="1268164075150238000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/1/V4/Netmask" value="255.255.255.0" timestamp="1268164075150439000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/1/Status" value="Up" timestamp="1268164075150635000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/2/V4/IP" value="192.168.54.1" timestamp="1268164075150835000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/2/V4/Broadcast" value="192.168.54.255" timestamp="1268164075151072000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/2/V4/Netmask" value="255.255.255.0" timestamp="1268164075151282000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/2/Status" value="Up" timestamp="1268164075151479000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/NoLoggedInUsers" value="false" timestamp="1268140276063587000" flags=""/> - <GuestProperty name="/VirtualBox/GuestAdd/Vbgl/Video/SavedMode" value="1024x768x32" timestamp="1268140287190297000" flags=""/> - <GuestProperty name="/VirtualBox/GuestAdd/HostVerLastChecked" value="3.1.4" timestamp="1268140310962236000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/3/V4/IP" value="192.168.122.1" timestamp="1268164075152293000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/3/V4/Broadcast" value="192.168.122.255" timestamp="1268164075152615000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/3/V4/Netmask" value="255.255.255.0" timestamp="1268164075152828000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/3/Status" value="Up" timestamp="1268164075153029000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/4/V4/IP" value="169.254.4.104" timestamp="1265728007966805000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/4/V4/Broadcast" value="169.254.255.255" timestamp="1265728007967184000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/4/V4/Netmask" value="255.255.0.0" timestamp="1265728007967487000" flags=""/> - <GuestProperty name="/VirtualBox/GuestInfo/Net/4/Status" value="Up" timestamp="1265728007967829000" flags=""/> - <GuestProperty name="/VirtualBox/HostInfo/GUI/LanguageID" value="de_DE" timestamp="1268140070610343000" flags=""/> - <GuestProperty name="/VirtualBox/HostInfo/VBoxVer" value="3.1.4" timestamp="1268154582522485000" flags="TRANSIENT, RDONLYGUEST"/> - <GuestProperty name="/VirtualBox/HostInfo/VBoxRev" value="57640" timestamp="1268154582522507000" flags="TRANSIENT, RDONLYGUEST"/> - <GuestProperty name="/VirtualBox/GuestInfo/OS/LoggedInUsersList" value="vmuser" timestamp="1268164075147867000" flags=""/> - </GuestProperties> - --> - </Hardware> - <StorageControllers> - <StorageController name="IDE-Controller" type="PIIX4" PortCount="2"> - <AttachedDevice type="HardDisk" port="0" device="0"> - <Image uuid="{${imageuuid}}"/> - </AttachedDevice> <!-- PLEASE DO NOT REMOVE THIS COMMENT (HD)!!! --> - <AttachedDevice passthrough="false" type="DVD" port="0" device="1"> - <HostDrive src="${cdrom_0}"/> - </AttachedDevice> <!-- PLEASE DO NOT REMOVE THIS COMMENT (CD)!!! --> - </StorageController> - <!-- - <StorageController name="Disketten-Controller" type="I82078" PortCount="1"> - <AttachedDevice type="Floppy" port="0" device="0"/> - </StorageController> - <StorageController name="SCSI-Controller" type="LsiLogic" PortCount="16"> - <AttachedDevice type="HardDisk" port="0" device="0"> - <Image uuid="{812c82bf-bd1a-4f59-a5b6-b54ae2f6c669}"/> - </AttachedDevice> - </StorageController> - --> - </StorageControllers> - </Machine> -</VirtualBox> -EOF diff --git a/os-plugins/plugins/virtualbox/files/run-virt.include b/os-plugins/plugins/virtualbox/files/run-virt.include deleted file mode 100644 index 53120f2c..00000000 --- a/os-plugins/plugins/virtualbox/files/run-virt.include +++ /dev/null @@ -1,372 +0,0 @@ -# run-virt.include -# ----------------------------------------------------------------------------- -# Copyright (c) 2009..2010 - RZ Uni Freiburg -# Copyright (c) 2009..2010 - OpenSLX GmbH -# -# This program/file 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 feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# ----------------------------------------------------------------------------- -# run-virt.include -# - Include script for running the VirtualBox on an OpenSLX client via the -# run-virt.sh or run-vmgrid.sh -################################################################################ - -################################################################################ -### Include general configuration -################################################################################ -if [ -f ${OPENSLX_DEFAULT_CONFDIR}/plugins/${self}/${self}.conf ]; then - . ${OPENSLX_DEFAULT_CONFDIR}/plugins/${self}/${self}.conf -else - writelog "Problems reading config file of ${self} plugin" - exit 1 -fi - -################################################################################ -### Declaration of default variables -################################################################################ - -PLUGINCONFVIRTUALBOX="${PLUGINCONFROOT}/${self}" -PLUGINDIRVIRTUALBOX="${OPENSLX_DEFAULT_DIR}/plugin-repo/${self}" -# create TMPDIR for all users -TMPDIR=/tmp/${self} -mkdir -m 1777 ${TMPDIR} 2>/dev/null -# dir for configs -confdir="/tmp/${self}/${USER}/${VM_ID}" -# use alternate configuration directory instead of $HOME/.VirtualBox -export VBOX_USER_HOME=${confdir} -# define dirs and files which can be removed after exit, be carefull! -RMDIRS="${snapshotdir} ${confdir} /tmp/.vbox-${USER}-ipc" -rm -rf ${RMDIRS} 2>/dev/null -machfolder="${confdir}/Machines" -# use vm_shortname for dir and config names since vm_name can be very long -machconfig="${machfolder}/${vm_shortname}/${vm_shortname}.xml" -diskfolder="${confdir}/HardDisks" -snapshotdir=${machfolder}/${vm_shortname}/Snapshots -mkdir -p ${diskfolder} ${snapshotdir} 2>/dev/null -# check if diskless var empty? -[ -z "${diskless}" ] && diskless=0 - -# configure our own rwimg, empty image which we support -if [ "${imgmode}" = "rwimg" ]; then - # what is our rwimg called? - imgname="${vm_shortname}.vdi" - vmpath=${imgpath}/${imgname} - if ! [ -e "${vmpath}" ]; then - cat ${PLUGINDIRVIRTUALBOX}/rwimg.vdi.gz | gunzip > "${vmpath}" - fi -fi - -# link to image -diskfile="${diskfolder}/${imgname}" -[ ${diskless} -eq 0 ] && ln -sf ${vmpath} ${diskfile} - -# check the file type -if echo ${imgname} | grep -qiE "vdi|vmdk|vhd" && [ ${diskless} -eq 0 ]; then - imgfmt=$(echo ${imgname##*.} | tr [a-z] [A-Z]) -elif [ ${diskless} -eq 0 ]; then - writelog "${imgname} is not a valid image format (vdi|vmdk|vhd), exiting!" - cleanexit 1 -fi - -# TODO: maybe rewrite, to reduce checks, merge it with network option, -# so we can have a "compatibility to vmware config" section -case "${vmostype}" in - winxp*|windowsxp*) - vmostype="WindowsXP" - ;; - winvista*|windowsvista*) - vmostype="WindowsVista" - ;; - windows7*) - vmostype="Windows7" - ;; - linux*|*ubuntu*|*suse*|debian*|*sci*) - if echo "${vmostype}" | grep -q "64"; then - vmostype="Linux26_64" - # check for vtflag - if [ ${vtflag} -ne 1 ]; then - writelog "You are trying to boot a 64 bit OS without a VT enabled CPU" - writelog "This is not supported, exiting!" - cleanexit 1 - fi - # check if host is only 32 bit, then use only 1 cpu (only 1 supported) - if echo "${host_arch}" | grep -qE "i.86"; then - cpu_cores=1 - fi - else - vmostype="Linux26" - fi - ;; -esac - -writelog "Directories:" -writelog "\tConfig dir:\t\t$confdir" -writelog "\tMachines dir:\t\t$machfolder" -writelog "\tMachine config:\t\t$machconfig" -[ ${diskless} -eq 0 ] && writelog "\tHardDisks dir:\t\t$diskfolder" - -################################################################################ -### Hardware checks -################################################################################ - -# remove ':' from MAC addr for vbox -macaddr=$(echo ${macaddr} | sed 's/://g') - -# machine UUID, MAC addr part of it -machineuuid="00000000-0000-0000-0000-${macaddr}" -# cosmetical, since UUID in lower case -machineuuid=$(echo ${machineuuid} | tr [A-Z] [a-z]) -# get UUID of VBox image, if not diskless -[ ${diskless} -eq 0 ] && diskuuid=$(VBoxManage -q showvdiinfo ${diskfile} \ - | grep UUID | awk '{print $2}') -# make disk immutable -imgtype="Immutable" -# snapshot UUID is static -snapshotuuid="88bc8b6d-f248-468a-95fe-318084904f8b" -# imageuuid in machine.include, dafault snapshotuuid -imageuuid=${snapshotuuid} - -# check if rw image -# remove disk and add rwimg if set -if echo "${imgmode}" | grep -q rw; then - # lock existing? - if [ -e "${vmpath}.lock" ]; then - writelog "This rw image is already in use." - writelog "Found lock: ${vmpath}.lock, exiting!" - writelog "Remove lock if you are sure that this is not the case" - cleanexit 1 - # image rw? - elif ! [ -w ${vmpath} ]; then - writelog "You defined mode rw, but image ${vmpath} is not rw! \c" - writelog "Please correct, exiting!" - cleanexit 1 - fi - # add lock - touch "${vmpath}.lock" - # remove lock after VM stopped - RMDIRS="${RMDIRS} ${vmpath}.lock" - imgtype="Normal" - # replace image uuid in machine config - imageuuid=${diskuuid} -elif [ ${diskless} -eq 0 ]; then - # use temp disk as snapshot - cat ${PLUGINDIRVIRTUALBOX}/empty-diff.vdi.gz \ - | gunzip > "${snapshotdir}/{${snapshotuuid}}.vdi" -fi - -# TODO: MEM muss noch angepasst werden. Maschine crasht wenn nehr als 50% MEM -# memory part equal to vmware plugin -# percentage of memory to use for virtualbox in standard case -#if [ -n "${forcemem}" ]; then -# mem="${forcemem}" -#else -# permem=30 -# if [ "${totalmem}" -ge "1600" ]; then -# permem=40 -# fi -# # check if /tmp is on harddisk -# if grep -qe "/dev/.* /tmp " /proc/mounts ; then -# permem=60 -# id44="1" -# # Hack, if more than 2,5G RAM use 40% of Ram and write vmem into Ram as well -# # (40% vmware | 40% confdir(vmem...) | 20% host -# # VMplayer 2+ issue -# # TODO: makes this sense for vbox? -# #if [ "${totalmem}" -ge "2500" ]; then -# #permem=40 -# #rmdir ${snapshotdir} -# #snapshotdirold=${snapshotdir} -# #snapshotdir=/dev/shm/${self}/${USER}/${VM_ID} -# #mkdir -p ${snapshotdir} -# #ln -sf ${snapshotdir} ${snapshotdirold} -# #fi -# fi -# mem=$(expr ${totalmem} / 100 \* ${permem}) -# if [ "${id44}" = "1" ]; then -# hostmem=$(expr ${totalmem} - ${mem}) -# else -# hostmem=$(expr ${totalmem} - ${mem} - ${mem}) -# fi -# #permem=40 -# #mem=$(expr ${totalmem} * ${permem}) -# if [ "${mem}" -lt "256" ] || [ "${hostmem}" -lt "256" ]; then -# writelog "Memory out of range: ${mem} MB (guest) / ${hostmem} MB (host)!" -# writelog "Min. 256 MB for host and guest!" -# cleanexit 1 -# fi -#fi - -# translate network cards -case "${network_card}" in - e1000) - vb_network_card="82540EM" - ;; - virtio) - vb_network_card="virtio" - ;; - *) - network_card="pcnet" - vb_network_card="Am79C973" -esac - -# translate network kinds (nat, bridged, host-only) -case "${network_kind}" in - bridge*) - network_kind='BridgedInterface name="br0"' - ;; - host*) - network_kind='HostOnlyInterface name="vboxnet0"' - ;; - *) - network_kind="NAT" -esac - -# translate boot, use if set else set to HardDisk -# usually support for a,c,d,n, stands for Floppy, HD, CD-ROM, Network -# support nfs and tftp as well -case ${boot} in - n*|tftp) - boot="Network" - if [ "${network_kind}" = "NAT" ] && [ -n "${virtualbox_tftpdir}" ]; then - # use vm_shortname to avoid Problems /w TFTP in NAT - vm_name=${vm_shortname} - # link TFTP dir for NAT TFTP boots - mkdir -p ${confdir}/TFTP - if [ -e ${virtualbox_tftpdir}/pxelinux.0 ]; then - cp ${virtualbox_tftpdir}/pxelinux.0 ${confdir}/TFTP/${vm_name}.pxe - else - writelog "${virtualbox_tftpdir}/pxelinux.0 not found!" - writelog "Network boot won't work, exiting!" - cleanexit 1 - fi - for i in $(ls ${virtualbox_tftpdir}); do - ln -sf ${virtualbox_tftpdir}/${i} ${confdir}/TFTP/${i} - done - fi - ;; - # later maybe c|disk|hd*|sd*) for HD and d|cd*) for CD-ROM - *) - boot="HardDisk" - ;; -esac - -# nested paging -npaging="false" -# enable VT -enablevt="false" -# check for VT, if not available use only 1 cpu (only 1 supported) -[ ${vtflag} -eq 0 ] && cpu_cores=1 -[ ${vtflag} -eq 1 ] && enablevt="true" - -# external GUI -vrdpport=${remotedesktopport} - -[ ${diskless} -eq 0 ] && writelog "\tSnapshots dir:\t\t$snapshotdir" -writelog "Diskimage:" -[ ${diskless} -eq 0 ] && writelog "\tDisk file:\t\t$diskfile" -[ ${diskless} -eq 0 ] && writelog "\tDisk format:\t\t$imgfmt" -[ ${diskless} -eq 0 ] && writelog "\tDisk type:\t\t$imgtype" - writelog "\tVMostype:\t\t$vmostype" - writelog "\tMachine UUID:\t\t$machineuuid" -[ ${diskless} -eq 0 ] && writelog "\tDisk UUID:\t\t$diskuuid" -writelog "Virtual Hardware:" -writelog "\tCPU cores:\t\t${cpu_cores}\c" -[ ${vtflag} -eq 0 ] && writelog "" -[ ${vtflag} -eq 1 ] && writelog " (VT enabled CPU)" -writelog "\tGuest RAM:\t\t${mem} MB" -# echo nur wenn hostmem gesetzt -[ -n "${hostmem}" ] && writelog "\tHost RAM:\t\t${hostmem} MB" -writelog "\tMAC address:\t\t$macaddr" -writelog "\tNetwork card:\t\t${vb_network_card}" -writelog "\tNetwork kind:\t\t${network_kind}" -writelog "\tBooting from:\t\t${boot}\c" -[ ${diskless} -eq 0 ] && writelog "" -[ ${diskless} -eq 1 ] && writelog " 'diskless'" -# TODO: server start activate via xml, etc... -#writelog "\tGuest VRDP port:\t${vrdpport}" -writelog "\tCD-ROM1:\t\t${cdrom0}" -#writelog "\tCD-ROM2:\t\t${cdrom1}" -#writelog "\tFloppy_A:\t\t${floppy0}" -#writelog "\tFloppy_B:\t\t${floppy1}" -# defined in run-virt.sh and run-vmgrid.sh -writelog "\tShared Folders '${sharename}':\t${sharepath}" - -################################################################################ -### Pepare and configure virtual machine and disk image -################################################################################ - -# create Virtualbox.xml -. ${PLUGINCONFVIRTUALBOX}/virtualbox.include - -# remove snapshot disk when using rw images -if [ "${imgtype}" != "Immutable" ]; then - sed -i "/${snapshotuuid}/d" "${confdir}/VirtualBox.xml" -fi - -# TODO: add rawdisk if requested -#"raw.vmdk" format="VMDK" type="Writethrough"/> - -# create machine.xml -. ${PLUGINCONFVIRTUALBOX}/machine.include - -# remove CD-ROM -if [ "${cdrom0}" != "TRUE" ]; then - sed -i "/HostDrive/d" ${machconfig} - sed -i '/AttachedDevice.*type="DVD"/d' ${machconfig} - sed -i "/<!-- PLEASE DO NOT REMOVE THIS COMMENT (CD)!!! -->/d" ${machconfig} -fi - -# if diskless remove all disks -if [ ${diskless} -eq 1 ]; then - sed -i "/<HardDisk/d;/<\/HardDisk/d" "${confdir}/VirtualBox.xml" - sed -i "/${imageuuid}/d" ${machconfig} - sed -i '/AttachedDevice type="HardDisk"/d' ${machconfig} - sed -i "/<!-- PLEASE DO NOT REMOVE THIS COMMENT (HD)!!! -->/d" ${machconfig} -fi - -# define redirects -if [ ${redirects} -ge 1 ]; then - (( i=1 )) - writelog "\tGuest redirects:\t\c" - while [ ${i} -le ${redirects} ]; do - extradataitem='<ExtraDataItem name="VBoxInternal/Devices' - extradataitem="${extradataitem}/${network_card}/0/LUN#0/Config" - extradataitem="${extradataitem}/${redirect_name[$i]}/" - extradataprotocol="Protocol\" value=\"${redirect_proto[$i]}\"/>" - extradatahostport="HostPort\" value=\"${redirect_hport[$i]}\"/>" - extradataguestport="GuestPort\" value=\"${redirect_gport[$i]}\"/>" - sed -i "s,</ExtraData>, ${extradataitem}${extradataguestport}\n\ - ${extradataitem}${extradatahostport}\n\ - ${extradataitem}${extradataprotocol}\n\ - </ExtraData>," "${machconfig}" - writelog "${tabspace}${redirect_name[$i]} port: ${redirect_hport[$i]}" - tabspace='\t\t\t\t' - (( i=$i+1 )) - done -fi - -################################################################################ -### finally set env for run-virt.sh -################################################################################ - -# wait for a certain command to settle -# get the PID of the right process -# kill PID, seems to work -VBMANPID=$(pstree -p | grep VBoxXPCOMIPCD | grep -ivE "VirtualBox|VBoxHeadless"\ - | sed -e "s/.*VBoxXPCOMIPCD(\(.*\)).*/\1/") -for i in $(echo ${VBMANPID}); do - kill -9 ${VBMANPID} >/dev/null 2>&1 -done - -# set the variables appropriately (several interfaces with different names) -VIRTCMD=$(which VirtualBox 2>/dev/null) -VIRTCMDOPTS="--startvm ${machineuuid} --start-running" - -# set headless mode (-v off to disable vrdp) -VIRTCMDHL=$(which VBoxHeadless 2>/dev/null) -VIRTCMDOPTSHL="-s ${machineuuid}" diff --git a/os-plugins/plugins/virtualbox/files/rwimg.vdi.gz b/os-plugins/plugins/virtualbox/files/rwimg.vdi.gz Binary files differdeleted file mode 100644 index e2133d6d..00000000 --- a/os-plugins/plugins/virtualbox/files/rwimg.vdi.gz +++ /dev/null diff --git a/os-plugins/plugins/virtualbox/files/virtualbox.include b/os-plugins/plugins/virtualbox/files/virtualbox.include deleted file mode 100644 index 9576fc9c..00000000 --- a/os-plugins/plugins/virtualbox/files/virtualbox.include +++ /dev/null @@ -1,47 +0,0 @@ -# Include file (general template) for run-virt.include of the virtualbox plugin -cat << EOF > "${confdir}/VirtualBox.xml" -<?xml version="1.0"?> -<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.9-linux"> <!-- 1.7-linux --> - <Global> - <ExtraData> - <ExtraDataItem name="GUI/Input/AutoCapture" value="true"/> - <ExtraDataItem name="GUI/Input/HostKey" value="65300"/> <!-- scroll lock / Rollen --> - <ExtraDataItem name="GUI/LastVMSelected" value="${machineuuid}"/> - <ExtraDataItem name="GUI/LicenseAgreed" value="1,2,3,4,5,6,7,8,9"/> - <ExtraDataItem name="GUI/MaxGuestResolution" value="any"/> <!-- auto, width,height --> - <ExtraDataItem name="GUI/SUNOnlineData" value="triesLeft=0"/> - <ExtraDataItem name="GUI/SuppressMessages" value=",remindAboutAutoCapture,confirmInputCapture,remindAboutWrongColorDepth,confirmGoingFullscreen,remindAboutMouseIntegrationOn,remindAboutMouseIntegrationOff,showRuntimeError.warning.DevATA_DISKFULL,remindAboutPausedVMInput,confirmVMReset,showRuntimeError.warning.HostAudioNotResponding"/> - <ExtraDataItem name="GUI/TrayIcon/Enabled" value="false"/> - <ExtraDataItem name="GUI/UpdateCheckCount" value="2"/> - <ExtraDataItem name="GUI/UpdateDate" value="never"/> - </ExtraData> - <MachineRegistry> - <MachineEntry uuid="{${machineuuid}}" src="Machines/${vm_shortname}/${vm_shortname}.xml"/> - </MachineRegistry> - <MediaRegistry> - <HardDisks> - <HardDisk uuid="{${diskuuid}}" location="${diskfile}" format="${imgfmt}" type="${imgtype}"> - <HardDisk uuid="{${snapshotuuid}}" location="${snapshotdir}/{${snapshotuuid}}.vdi" format="VDI" autoReset="true"/> - </HardDisk> - </HardDisks> - <!-- - <DVDImages> - <Image uuid="{dcd1e32a-729f-4faa-b319-67adca15e4a4}" location="/.../gpxe-1.0.0+-virtio-net.iso"/> - <Image uuid="{b71450c6-b8ff-43c1-a290-2a793b3023d8}" location="/.../gpxe-1.0.0+-e1000.iso"/> - </DVDImages> - --> - <FloppyImages/> - </MediaRegistry> - <NetserviceRegistry> - <DHCPServers> - <DHCPServer networkName="HostInterfaceNetworking-vboxnet0" IPAddress="192.168.56.100" networkMask="255.255.255.0" lowerIP="192.168.56.101" upperIP="192.168.56.254" enabled="1"/> - <!-- - <DHCPServer networkName="HostInterfaceNetworking-vboxnet1" IPAddress="0.0.0.0" networkMask="0.0.0.0" lowerIP="0.0.0.0" upperIP="0.0.0.0" enabled="0"/> - --> - </DHCPServers> - </NetserviceRegistry> - <SystemProperties defaultMachineFolder="${machfolder}" defaultHardDiskFolder="${diskfolder}" defaultHardDiskFormat="VDI" remoteDisplayAuthLibrary="VRDPAuth" webServiceAuthLibrary="VRDPAuth" LogHistoryCount="3"/> - <USBDeviceFilters/> - </Global> -</VirtualBox> -EOF diff --git a/os-plugins/plugins/virtualbox/init-hooks/20-nw-bridge-config/bridge.sh b/os-plugins/plugins/virtualbox/init-hooks/20-nw-bridge-config/bridge.sh deleted file mode 100644 index a6d335c5..00000000 --- a/os-plugins/plugins/virtualbox/init-hooks/20-nw-bridge-config/bridge.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -# Copyright (c) 2010 - 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 feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# -# Init hook to create a bridge on the active network interface -# (should be kept identical to the files of virtualbox and qemukvm plugins) -############################################################################# - -local bridge=br0 -local brnwif=${nwif} -local nwifmac=${macaddr} - -# bridge 0 already defined or some other problem -brctl addbr ${bridge} || exit 0 -brctl stp ${bridge} 0 -brctl setfd ${bridge} 0.000000000001 -ip link set addr ${nwifmac} ${bridge} -ip link set dev ${nwif} up -brctl addif ${bridge} ${nwif} - -# fixme: sending back the variable to init does not work properly at the -# moment -nwif=${bridge} |