1
0
forked from pool/virtualbox
virtualbox/vbox-vboxdrv-init-script.diff
2012-10-02 14:03:09 +00:00

111 lines
4.3 KiB
Diff

Index: src/VBox/Installer/linux/vboxdrv.sh.in
===================================================================
--- src/VBox/Installer/linux/vboxdrv.sh.in.orig
+++ src/VBox/Installer/linux/vboxdrv.sh.in
@@ -17,15 +17,16 @@
# chkconfig: 35 20 80
# description: VirtualBox Linux kernel module
#
### BEGIN INIT INFO
# Provides: vboxdrv
-# Required-Start: $syslog
-# Required-Stop:
-# Default-Start: 2 3 4 5
+# Required-Start: $syslog $remote_fs
+# Required-Stop: $syslog $remote_fs
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Short-Description: VirtualBox Linux kernel module
+# Description: VirtualBox Linux kernel module
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin:$PATH
DEVICE=/dev/vboxdrv
LOG="/var/log/vbox-install.log"
@@ -191,17 +192,10 @@ start()
rmmod vboxdrv 2>/dev/null
failure "Cannot create device $DEVICE with major $MAJOR and minor $MINOR"
fi
fi
# ensure permissions
- if ! chown :%GROUP% $DEVICE 2>/dev/null; then
- rmmod vboxpci 2>/dev/null
- rmmod vboxnetadp 2>/dev/null
- rmmod vboxnetflt 2>/dev/null
- rmmod vboxdrv 2>/dev/null
- failure "Cannot change group %GROUP% for device $DEVICE"
- fi
if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then
failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out why"
fi
if ! $MODPROBE vboxnetadp > /dev/null 2>&1; then
failure "modprobe vboxnetadp failed. Please use 'dmesg' to find out why"
@@ -295,66 +289,12 @@ stop_vms()
}
# setup_script
setup()
{
- stop
- begin_msg "Uninstalling old VirtualBox DKMS kernel modules"
- $DODKMS uninstall vboxhost vboxdrv vboxnetflt vboxnetadp > $LOG
- succ_msg
- if find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|grep -q vboxpci; then
- begin_msg "Removing old VirtualBox pci kernel module"
- find /lib/modules/`uname -r` -name "vboxpci\.*" 2>/dev/null|xargs rm -f 2>/dev/null
- succ_msg
- fi
- if find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|grep -q vboxnetadp; then
- begin_msg "Removing old VirtualBox netadp kernel module"
- find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|xargs rm -f 2>/dev/null
- succ_msg
- fi
- if find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|grep -q vboxnetflt; then
- begin_msg "Removing old VirtualBox netflt kernel module"
- find /lib/modules/`uname -r` -name "vboxnetflt\.*" 2>/dev/null|xargs rm -f 2>/dev/null
- succ_msg
- fi
- if find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|grep -q vboxdrv; then
- begin_msg "Removing old VirtualBox kernel module"
- find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|xargs rm -f 2>/dev/null
- succ_msg
- fi
- begin_msg "Trying to register the VirtualBox kernel modules using DKMS"
- if ! $DODKMS install vboxhost $VERSION >> $LOG; then
- fail_msg "Failed, trying without DKMS"
- begin_msg "Recompiling VirtualBox kernel modules"
- if ! $BUILDINTMP \
- --save-module-symvers /tmp/vboxdrv-Module.symvers \
- --module-source "$MODULE_SRC/vboxdrv" \
- --no-print-directory install >> $LOG 2>&1; then
- failure "Look at $LOG to find out what went wrong"
- fi
- if ! $BUILDINTMP \
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
- --module-source "$MODULE_SRC/vboxnetflt" \
- --no-print-directory install >> $LOG 2>&1; then
- failure "Look at $LOG to find out what went wrong"
- fi
- if ! $BUILDINTMP \
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
- --module-source "$MODULE_SRC/vboxnetadp" \
- --no-print-directory install >> $LOG 2>&1; then
- failure "Look at $LOG to find out what went wrong"
- fi
- if ! $BUILDINTMP \
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
- --module-source "$MODULE_SRC/vboxpci" \
- --no-print-directory install >> $LOG 2>&1; then
- failure "Look at $LOG to find out what went wrong"
- fi
- fi
- rm -f /etc/vbox/module_not_compiled
+ begin_msg "Recompiling VirtualBox vboxadd kernel module, NOT. It has been packaged."
succ_msg
- start
}
dmnstatus()
{
if running vboxdrv; then