VirtualBox

source: vbox/trunk/src/VBox/Additions/linux/installer/vboxvfs.sh@ 8155

Last change on this file since 8155 was 8155, checked in by vboxsync, 17 years ago

The Big Sun Rebranding Header Change

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1#! /bin/sh
2# innotek VirtualBox
3# Linux Additions VFS kernel module init script
4#
5# Copyright (C) 2006-2007 Sun Microsystems, Inc.
6#
7# This file is part of VirtualBox Open Source Edition (OSE), as
8# available from http://www.virtualbox.org. This file is free software;
9# you can redistribute it and/or modify it under the terms of the GNU
10# General Public License (GPL) as published by the Free Software
11# Foundation, in version 2 as it comes in the "COPYING" file of the
12# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
13# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
14#
15# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
16# Clara, CA 95054 USA or visit http://www.sun.com if you need
17# additional information or have any questions.
18#
19
20
21# chkconfig: 35 30 60
22# description: VirtualBox Linux Additions VFS kernel module
23#
24### BEGIN INIT INFO
25# Provides: vboxvfs
26# Required-Start: vboxadd
27# Required-Stop:
28# Default-Start: 3 5
29# Default-Stop:
30# Description: VirtualBox Linux Additions VFS kernel module
31### END INIT INFO
32
33PATH=$PATH:/bin:/sbin:/usr/sbin
34
35if [ -f /etc/redhat-release ]; then
36 system=redhat
37elif [ -f /etc/SuSE-release ]; then
38 system=suse
39elif [ -f /etc/gentoo-release ]; then
40 system=gentoo
41else
42 system=other
43fi
44
45if [ "$system" = "redhat" ]; then
46 . /etc/init.d/functions
47 fail_msg() {
48 echo_failure
49 echo
50 }
51
52 succ_msg() {
53 echo_success
54 echo
55 }
56
57 begin() {
58 echo -n "$1"
59 }
60fi
61
62if [ "$system" = "suse" ]; then
63 . /etc/rc.status
64 fail_msg() {
65 rc_failed 1
66 rc_status -v
67 }
68
69 succ_msg() {
70 rc_reset
71 rc_status -v
72 }
73
74 begin() {
75 echo -n "$1"
76 }
77fi
78
79if [ "$system" = "gentoo" ]; then
80 . /sbin/functions.sh
81 fail_msg() {
82 eend 1
83 }
84
85 succ_msg() {
86 eend $?
87 }
88
89 begin() {
90 ebegin $1
91 }
92
93 if [ "`which $0`" = "/sbin/rc" ]; then
94 shift
95 fi
96fi
97
98if [ "$system" = "other" ]; then
99 fail_msg() {
100 echo " ...fail!"
101 }
102
103 succ_msg() {
104 echo " ...done."
105 }
106
107 begin() {
108 echo -n $1
109 }
110fi
111
112kdir=/lib/modules/`uname -r`/misc
113modname=vboxvfs
114module="$kdir/$modname"
115
116file=""
117test -f $module.o && file=$module.o
118test -f $module.ko && file=$module.ko
119
120fail() {
121 if [ "$system" = "gentoo" ]; then
122 eerror $1
123 exit 1
124 fi
125 fail_msg
126 echo "($1)"
127 exit 1
128}
129
130test -z "$file" && {
131 fail "Kernel module not found"
132}
133
134running() {
135 lsmod | grep -q $modname[^_-]
136}
137
138start() {
139 begin "Starting VirtualBox Additions shared folder support ";
140 running || {
141 modprobe $modname > /dev/null 2>&1 || {
142 if dmesg | grep "vboxConnect failed" > /dev/null 2>&1; then
143 fail_msg
144 echo "You may be trying to run Guest Additions from binary release of VirtualBox"
145 echo "in the Open Source Edition."
146 exit 1
147 fi
148 fail "modprobe $modname failed"
149 }
150 }
151 succ_msg
152 return 0
153}
154
155stop() {
156 begin "Stopping VirtualBox Additions shared folder support ";
157 if running; then
158 rmmod $modname || fail "Cannot unload module $modname"
159 fi
160 succ_msg
161 return 0
162}
163
164restart() {
165 stop && start
166 return 0
167}
168
169dmnstatus() {
170 if running; then
171 echo "VirtualBox Additions shared folder support is currently running."
172 else
173 echo "VirtualBox Additions shared folder support is not currently running."
174 fi
175}
176
177case "$1" in
178start)
179 start
180 ;;
181stop)
182 stop
183 ;;
184restart)
185 restart
186 ;;
187status)
188 dmnstatus
189 ;;
190*)
191 echo "Usage: $0 {start|stop|restart|status}"
192 exit 1
193esac
194
195exit
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette