Virtualbox
Kurz ein Überblick zu virtualbox und debian 7 oder 8
Installation
entprechen folgendem Link
https://wiki.debian.org/VirtualBox
Autostart und Autostop
vi /etc/default/virtualbox
VBOXAUTOSTART_DB=/etc/vbox VBOXAUTOSTART_CONFIG=/etc/vbox/autostart.conf
mkdir /etc/vbox
chgrp vboxusers /etc/vbox chmod 1775 /etc/vbox
Anlegen und bearbeiten der Datei
vi /etc/vbox/autostart.conf
# Default policy is to deny starting a VM, the other option is "allow". default_policy = deny
# user vbox is allowed to start virtual machines but starting them # will be delayed for 10 seconds vboxeigentuemer = { allow = true startup_delay = 10 }
Hinzufügen des Eigentuemers zur Gruppe
usermod -a -G vboxusers vboxeigentuemer
Anmelden als vboxeigentuemer
VBoxManage setproperty autostartdbpath /etc/vbox VBoxManage modifyvm Win7prof --autostart-enabled on --autostop-type acpishutdown
Anmelden als root
--> nich mehr notwendig Debian 9, 10
Herunterladen und modifizieren des vboxautostart-service
cd /etc/init.d/ wget http://www.virtualbox.org/browser/vbox/trunk/src/VBox/Installer/linux/vboxautostart-service.sh?format=raw -O vboxautostart-service chmod +x vboxautostart-service vi vboxautostart-service
Ändern der Zeilen in
# Required-Start: virtualbox # Required-Stop: virtualbox
Registrieren
update-rc.d vboxautostart-service defaults
und starten
/etc/init.d/vboxautostart-service start
<-----
Probleme
1. Das stoppen der VMs läuft nicht sauber!
2. Wenn mehrer User VMs starten, wird immer nur der User gestartet mit der niedrigsten uid.
Lösung
Ergänzen des Startscriptes in
/usr/lib/virtualbox/vboxautostart-service.sh
ca. Zeile 107
mit einem sleep 10
Zur Kontrolle habe ich noch ein echo hinzugefügt.
....
for user in `ls $VBOXAUTOSTART_DB/*.start`
do
start_daemon `basename $user | sed -ne "s/\(.*\).start//p"` $binary $PARAMS > /dev/null 2>&1
sleep 10
echo "VBoxAutostart multiuser start -bacu- ---> " $user
done
....
Fertig!!