Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37809015
en ru br
Репозитории ALT
S:7.0.10-alt2
5.1: 4.0.12-alt0.M51.1
4.1: 2.1.4-alt0.M41.5
4.0:
+backports:1.6.6-alt0.M40.2
www.altlinux.org/Changes

Группа :: Эмуляторы
Пакет: virtualbox

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: VirtualBox-alt-init-scripts.diff
Скачать


diff --git a/VirtualBox/src/VBox/Additions/linux/installer/vboxadd-timesync.sh b/VirtualBox/src/VBox/Additions/linux/installer/vboxadd-timesync.sh
index f72661e..4832fa2 100644
--- a/VirtualBox/src/VBox/Additions/linux/installer/vboxadd-timesync.sh
+++ b/VirtualBox/src/VBox/Additions/linux/installer/vboxadd-timesync.sh
@@ -30,178 +30,82 @@
 # Description:    VirtualBox Additions timesync
 ### END INIT INFO
 
-PATH=$PATH:/bin:/sbin:/usr/sbin
+# Do not load RH compatibility interface.
+WITHOUT_RC_COMPAT=1
 
-system=unknown
-if [ -f /etc/redhat-release ]; then
-    system=redhat
-    PIDFILE="/var/lock/subsys/vboxadd-timesync"
-elif [ -f /etc/SuSE-release ]; then
-    system=suse
-    PIDFILE="/var/lock/subsys/vboxadd-timesync"
-elif [ -f /etc/debian_version ]; then
-    system=debian
-    PIDFILE="/var/run/vboxadd-timesync"
-elif [ -f /etc/gentoo-release ]; then
-    system=gentoo
-    PIDFILE="/var/run/vboxadd-timesync"
-else
-    system=other
-    if [ -d /var/run -a -w /var/run ]; then
-        PIDFILE="/var/run/vboxadd-timesync"
-    fi
-fi
+# Source function library.
+. /etc/init.d/functions
 
-if [ "$system" = "redhat" ]; then
-    . /etc/init.d/functions
-    fail_msg() {
-        echo_failure
-        echo
-    }
-
-    succ_msg() {
-        echo_success
-        echo
-    }
-fi
-
-if [ "$system" = "suse" ]; then
-    . /etc/rc.status
-    daemon() {
-        startproc ${1+"$@"}
-    }
-
-    fail_msg() {
-        rc_failed 1
-        rc_status -v
-    }
-
-    succ_msg() {
-        rc_reset
-        rc_status -v
-    }
-fi
-
-if [ "$system" = "debian" ]; then
-    daemon() {
-        start-stop-daemon --start --exec $1 -- $2
-    }
-
-    killproc() {
-        start-stop-daemon --stop --exec $@
-    }
-
-    fail_msg() {
-        echo " ...fail!"
-    }
-
-    succ_msg() {
-        echo " ...done."
-    }
-fi
-
-if [ "$system" = "gentoo" ]; then
-    . /sbin/functions.sh
-    daemon() {
-        start-stop-daemon --start --exec $1 -- $2
-    }
-
-    killproc() {
-        start-stop-daemon --stop --exec $@
-    }
-
-    fail_msg() {
-        echo " ...fail!"
-    }
-
-    succ_msg() {
-        echo " ...done."
-    }
-
-    if [ "`which $0`" = "/sbin/rc" ]; then
-        shift
-    fi
-fi
-
-if [ "$system" = "other" ]; then
-    fail_msg() {
-        echo " ...fail!"
-    }
-
-    succ_msg() {
-        echo " ...done."
-    }
-
-    begin() {
-        echo -n "$1"
-    }
-fi
+LOCKFILE="/var/lock/subsys/vboxadd-timesync"
+PIDFILE="/var/run/vboxadd-timesync"
+RETVAL=0
 
 binary=/usr/sbin/vboxadd-timesync
 
 test -x "$binary" || {
-    echo "Cannot run $binary"
-    exit 1
-}
-
-vboxaddrunning() {
-    lsmod | grep -q "vboxadd[^_-]"
+	echo "Cannot run $binary"
+	exit 1
 }
 
-start() {
-    if ! test -f $PIDFILE; then
-        echo -n "Starting VirtualBox host to guest time synchronisation ";
-        vboxaddrunning || {
-            echo "VirtualBox Additions module not loaded!"
-            exit 1
-        }
-        daemon $binary --daemonize
-        RETVAL=$?
-        test $RETVAL -eq 0 && touch $PIDFILE
-        succ_msg
-    fi
-    return $RETVAL
+vboxaddrunning()
+{
+	lsmod | grep -q "vboxadd[^_-]"
 }
 
-stop() {
-    if test -f $PIDFILE; then
-        echo -n "Stopping VirtualBox host to guest time synchronisation ";
-        vboxaddrunning || {
-            echo "VirtualBox Additions module not loaded!"
-            exit 1
-        }
-        killproc $binary
-        RETVAL=$?
-        test $RETVAL -eq 0 && rm -f $PIDFILE
-        succ_msg
-    fi
-    return $RETVAL
+start()
+{
+	msg_starting $"Starting VirtualBox host to guest time synchronisation"
+	vboxaddrunning || {
+		echo "VirtualBox Additions module not loaded!"
+		exit 1
+	}
+	start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --no-announce -- $binary
+	RETVAL=$?
+	return $RETVAL
 }
 
-restart() {
-    stop && start
+stop()
+{
+	msg_stopping $"Stopping VirtualBox host to guest time synchronisation"
+	stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --no-announce $binary
+	RETVAL=$?
+	return $RETVAL
 }
 
-dmnstatus() {
-    status vboxadd-timesync
+restart()
+{
+	stop
+	start
 }
 
+# See how we were called.
 case "$1" in
-start)
-    start
-    ;;
-stop)
-    stop
-    ;;
-restart)
-    restart
-    ;;
-status)
-    dmnstatus
-    ;;
-*)
-    echo "Usage: $0 {start|stop|restart|status}"
-    exit 1
+	start)
+		start
+		;;
+	stop)
+		stop
+		;;
+	restart)
+		restart
+		;;
+	condstop)
+		if [ -e "$LOCKFILE" ]; then
+			stop
+		fi
+		;;
+	condrestart)
+		if [ -e "$LOCKFILE" ]; then
+			restart
+		fi
+		;;
+	status)
+		status
+		RETVAL=$?
+		;;
+	*)
+		msg_usage "${0##*/} {start|stop|restart|condstop|condrestart|status}"
+		RETVAL=1
 esac
 
 exit $RETVAL
diff --git a/VirtualBox/src/VBox/Additions/linux/installer/vboxadd.sh b/VirtualBox/src/VBox/Additions/linux/installer/vboxadd.sh
index 3aa7936..7dfaa04 100644
--- a/VirtualBox/src/VBox/Additions/linux/installer/vboxadd.sh
+++ b/VirtualBox/src/VBox/Additions/linux/installer/vboxadd.sh
@@ -30,6 +30,87 @@
 # Description:    VirtualBox Linux Additions kernel module
 ### END INIT INFO
 
+# Do not load RH compatibility interface.
+WITHOUT_RC_COMPAT=1
+
+# Source function library.
+. /etc/init.d/functions
+
+LOCKFILE=/var/lock/subsys/virtualbox-addition
+MODULENAME=vboxadd
+RETVAL=0
+
+running()
+{
+    lsmod | grep -q "$MODULENAME[^_-]"
+}
+
+start()
+{
+	action "Loading VirtualBox module ($MODULENAME):" modprobe $MODULENAME
+	RETVAL=$?
+	[ $RETVAL = 0 ] && touch "$LOCKFILE" ||:
+	return $RETVAL
+}
+
+stop()
+{
+	action "Unloading VirtualBox module ($MODULENAME):" modprobe -r $MODULENAME
+	RETVAL=$?
+	[ $RETVAL = 0 ] && rm -f "$LOCKFILE" ||:
+	return $RETVAL
+}
+
+restart()
+{
+	stop
+	start
+}
+
+status()
+{
+	if /sbin/lsmod | grep -qs "^$MODULENAME[[:space:]]"; then
+		echo "$MODULENAME module is loaded"
+		return 0
+	elif [ -f "$LOCKFILE" ]; then
+		echo "$MODULENAME module is not loaded, but subsystem is locked"
+		return 2
+	else
+		echo "$MODULENAME service is stopped"
+		return 3
+	fi
+}
+
+# See how we were called.
+case "$1" in
+	start)
+		start
+		;;
+	stop)
+		stop
+		;;
+	restart)
+		restart
+		;;
+	condstop)
+		if [ -e "$LOCKFILE" ]; then
+			stop
+		fi
+		;;
+	condrestart)
+		# Do nothing on package upgrade
+		;;
+	status)
+		status
+		RETVAL=$?
+		;;
+	*)
+		msg_usage "${0##*/} {start|stop|restart|condstop|condrestart|status}"
+		RETVAL=1
+esac
+
+exit $RETVAL
+
 PATH=$PATH:/bin:/sbin:/usr/sbin
 
 if [ -f /etc/redhat-release ]; then
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin