From 94fab6008b14c8b62e8b5a68b5e19cf9797b6499 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Thu, 1 Feb 2018 18:01:22 +0100 Subject: [vbox-src] run-virt plugin functional (wip) --- .../opt/openslx/scripts/pam_script_auth.d/20-vbox | 4 ++ .../data/opt/openslx/scripts/systemd-vbox_env | 61 ++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 core/modules/vbox-src/data/opt/openslx/scripts/pam_script_auth.d/20-vbox create mode 100755 core/modules/vbox-src/data/opt/openslx/scripts/systemd-vbox_env (limited to 'core/modules/vbox-src/data/opt/openslx/scripts') diff --git a/core/modules/vbox-src/data/opt/openslx/scripts/pam_script_auth.d/20-vbox b/core/modules/vbox-src/data/opt/openslx/scripts/pam_script_auth.d/20-vbox new file mode 100644 index 00000000..00d7cab2 --- /dev/null +++ b/core/modules/vbox-src/data/opt/openslx/scripts/pam_script_auth.d/20-vbox @@ -0,0 +1,4 @@ +getent group vboxusers || addgroup -S vboxusers +adduser "${PAM_USER}" "vboxusers" +true + diff --git a/core/modules/vbox-src/data/opt/openslx/scripts/systemd-vbox_env b/core/modules/vbox-src/data/opt/openslx/scripts/systemd-vbox_env new file mode 100755 index 00000000..f3267ebd --- /dev/null +++ b/core/modules/vbox-src/data/opt/openslx/scripts/systemd-vbox_env @@ -0,0 +1,61 @@ +#!/bin/ash +# ----------------------------------------------------------------------------- +# Copyright (c) 2007..2013 - RZ Uni FR +# Copyright (c) 2007..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/ +# ----------------------------------------------------------------------------- +# systemd-vbox_env +# - This is the preparation script for the configuration of VirtualBox. +################################################################################ + +export PATH="$PATH":/opt/openslx/bin:/opt/openslx/sbin + +## sanity checks +VBOX_BASE_DIR="/usr/lib/virtualbox" +VBOX_KMOD_DIR="/lib/modules/vbox" +# VBoxManage should be under /usr/lib/virtualbox +if ! [ -d "${VBOX_BASE_DIR}" -o -x "${VBOX_BASE_DIR}/VBoxManage" -o "${VBOX_KMOD_DIR}" ]; then + echo "Failed to find VirtualBox installation at expected paths." + exit 1 +fi + +# create required standard directories +mkdir -p "/tmp/virt/virtualbox" -m 1777 + +# load required Vbox modules +cd "${VBOX_KMOD_DIR}" +for MOD in *; do + insmod "${MOD}" || slxlog "vbox-setup" "Loading of ${MOD} failed." +done + +# check/create vboxusers group +getent group vboxusers || addgroup -S vboxusers + +chown root:vboxusers /dev/vboxdrv +chmod 666 /dev/vboxdrv +chown root:vboxusers /dev/vboxdrvu +chmod 666 /dev/vboxdrvu +#chown root:vboxusers /dev/vboxusb +#chmod 755 /dev/vboxusb + +# pretty dumb you can just create host-only interfaces, +# but not assign a specific name/number +VBOXMANAGE="${VBOX_BASE_DIR}/VBoxManage" +${VBOXMANAGE} hostonlyif create +ip link set dev vboxnet0 up +brctl addif br0 vboxnet0 + +${VBOXMANAGE} hostonlyif create +ip link set dev vboxnet1 up +brctl addif nat1 vboxnet1 + +${VBOXMANAGE} hostonlyif create +ip link set dev vboxnet2 up +brctl addif vsw2 vboxnet2 -- cgit v1.2.3-55-g7522