]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | # | |
3 | # virtualbox VirtualBox virtualizer for x86 hardware | |
4 | # chkconfig: 345 84 16 | |
5 | # description: Oracle VirtualBox is a general-purpose full virtualizer for x86 \ | |
6 | # hardware. Targeted at server, desktop and embedded use. | |
7 | ||
8 | # Source function library | |
9 | . /etc/rc.d/init.d/functions | |
10 | ||
11 | VBOX_MODULE="vboxsf" | |
12 | ||
13 | # Get service config - may override defaults | |
14 | [ -f /etc/sysconfig/virtualbox ] && . /etc/sysconfig/virtualbox | |
15 | ||
16 | start() { | |
17 | if [ -f /var/lock/subsys/vboxsf ]; then | |
18 | return | |
19 | fi | |
20 | ||
21 | modprobe -s $VBOX_MODULE | |
22 | run_cmd "Mount VirtualBox Shared Folders:" mount -a -t vboxsf | |
23 | touch /var/lock/subsys/vboxsf | |
24 | } | |
25 | ||
26 | stop() { | |
27 | if [ ! -f /var/lock/subsys/vboxsf ]; then | |
28 | return | |
29 | fi | |
30 | run_cmd "Unmount VirtualBox Shared Folders:" umount -a -t vboxsf | |
31 | ||
32 | # NOTE: rmmod will say module in use if there are remaining mounts | |
33 | rmmod -s $VBOX_MODULE | |
34 | ||
35 | rm -f /var/lock/subsys/vboxsf | |
36 | } | |
37 | ||
38 | RETVAL=0 | |
39 | # See how we were called. | |
40 | case "$1" in | |
41 | start) | |
42 | start | |
43 | ;; | |
44 | stop) | |
45 | stop | |
46 | ;; | |
47 | restart) | |
48 | stop | |
49 | start | |
50 | ;; | |
51 | status) | |
52 | if ! is_module $VBOX_MODULE; then | |
53 | echo "$VBOX_MODULE module is loaded" | |
54 | else | |
55 | echo "$VBOX_MODULE module is not loaded" | |
56 | RETVAL=3 | |
57 | fi | |
58 | ;; | |
59 | *) | |
60 | msg_usage "$0 {start|stop|restart|status}" | |
61 | exit 3 | |
62 | esac | |
63 | ||
64 | exit $RETVAL |