#!/bin/bash ### BEGIN INIT INFO # Provides: invirt-console-server # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Invirt console proxy server # Description: ### END INIT INFO # Author: Invirt project # Do NOT "set -e" # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="the Invirt console server" NAME=invirt-console-server DAEMON=/usr/bin/invirt-consolefs MOUNTPOINT="/consolefs" DAEMON_ARGS="-f $MOUNTPOINT" PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME GEN_FILES=(/etc/conserver/invirt-hosts.cf /etc/remctl/acl/invirt-console-server /etc/issue.net.no_tkt /etc/nss-pgsql.conf) # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 . /lib/init/gen-files.sh . /lib/init/std-init.sh # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started # Try to make sure fuse is setup [ -e /dev/fuse ] || modprobe fuse || return 2 if cat /proc/mounts | grep " $MOUNTPOINT " >/dev/null 2>&1; then return 1 fi gen_files daemon -r -O daemon.info -E daemon.err -n $NAME -- $DAEMON $DAEMON_ARGS || return 2 } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred if ! cat /proc/mounts | grep " $MOUNTPOINT " >/dev/null 2>&1; then return 1 fi daemon --stop -n $NAME RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 # Many daemons don't delete their pidfiles when they exit. rm -f $PIDFILE } do_reload() { gen_files invoke-rc.d conserver-server reload } std_init "$1"