start() {
# Check if the service is already running?
if [ ! -f /var/lock/subsys/virtualbox ]; then
+ msg_starting virtualbox
+
_modprobe single die vboxdrv
+ # XXX: patch udev/dev instead
chown root:vbox /dev/vboxdrv
- msg_starting virtualbox
+
daemon --fork VBoxSVC
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/virtualbox
stop() {
if [ -f /var/lock/subsys/virtualbox ]; then
- /sbin/rmmod vboxdrv >/dev/null 2>&1
# Stop daemons.
msg_stopping virtualbox
+
+ # NOTE: rmmod will wait if device is in use, so automatic rmmod probably not the best idea
+ /sbin/rmmod vboxdrv >/dev/null 2>&1
+
killproc VBoxSVC
rm -f /var/lock/subsys/virtualbox
else