Hello,
I have modified the initscript of amavis to have status/monitor section.
I have attached to this mail, maybe it is useful for another person.
Regards.
#! /bin/sh
#
# amavisd /etc/init.d/ initscript for amavisd-new
# $Id: amavisd-new.init 800 2006-01-31 00:07:45Z hmh $
#
# Copyright (c) 2003 by Brian May <b...@debian.org>
# and Henrique M. Holschuh <h...@debian.org>
# Distributed under the GPL version 2
# Modified by Adrián Chapela, added status and monitor section
2009 adrian.chap...@ghandalf.org
#
#
# How this thing works:
# ${START} must be only what is needed for start-stop-daemon, DO NOT
# ADD ANY PARAMETERS HERE! we might use it for --test, for example.
# ${STOP} works just like ${START}, --signal is used with it.
#
# ${PARAMS} are the parameters to give the daemon when really starting
# it.
### BEGIN INIT INFO
# Provides: amavisd-new
# Required-Start: $syslog $network $local_fs
# Required-Stop: $syslog $network $local_fs
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts amavisd-new mailfilter
# Description: Launches the amavisd-new mailfilter
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/amavisd-new
DAEMON2=/usr/bin/perl
NAME=amavisd
DAEMONNAME=amavisd-new
DESC=amavisd
PIDFILE="/var/run/amavis/$NAME.pid"
result=0
test -f ${DAEMON} || exit 0
set -e
START="--start --quiet --pidfile /var/run/amavis/${NAME}.pid --name
${DAEMONNAME} --startas ${DAEMON}"
STOP="--stop --quiet --pidfile /var/run/amavis/${NAME}.pid --name ${DAEMONNAME}"
PARAMS=
check_noncompatible_upgrade() {
for i in /etc/amavisd.conf /etc/amavis/amavisd.conf ; do
if [ -e "${i}.disabled" ] ; then
echo "Found incompatible config file flag!" >&2
echo "Due to safety concerns, amavisd-new will not be
started." >&2
echo "Refer to /usr/share/doc/amavisd-new/README.Debian
for instructions." >&2
exit 1
fi
done
}
createdir() {
# $1 = user
# $2 = group
# $3 = permissions (octal)
# $4 = path to directory
[ -d "$4" ] || mkdir -p "$4"
chown -c -h "$1:$2" "$4"
chmod -c "$3" "$4"
}
fixdirs() {
dir=$(dpkg-statoverride --list /var/run/amavis) || {
echo "You are missing a dpkg-statoverride on /var/run/amavis.
Fix it, otherwise you risk silent breakage on upgrades." >&2
exit 1
}
[ -z "$dir" ] || createdir $dir
:
}
cleanup() {
[ -d /var/lib/amavis ] &&
find /var/lib/amavis -maxdepth 1 -name 'amavis-*' -type d \
-exec rm -rf "{}" \; >/dev/null 2>&1 || true
[ -d /var/lib/amavis/tmp ] &&
find /var/lib/amavis/tmp -maxdepth 1 -name 'amavis-*' -type d \
-exec rm -rf "{}" \; >/dev/null 2>&1 || true
:
}
case "$1" in
start)
echo -n "Starting $DESC: "
fixdirs
check_noncompatible_upgrade
if start-stop-daemon ${START} -- ${PARAMS} start >/dev/null ; then
echo "amavisd-new."
else
if start-stop-daemon --test ${START} >/dev/null 2>&1; then
echo "(failed)."
exit 1
else
echo "(already running)."
exit 0
fi
fi
;;
stop)
echo -n "Stopping $DESC: "
if start-stop-daemon ${STOP} --retry 10 >/dev/null ; then
cleanup
echo "amavisd-new."
else
if start-stop-daemon --test ${START} >/dev/null 2>&1; then
echo "(not running)."
exit 0
else
echo "(failed)."
exit 1
fi
fi
;;
# reload)
# echo "Reloading $DESC configuration files."
# start-stop-daemon ${STOP} --signal 1
# ;;
restart|force-reload)
$0 stop
exec $0 start
;;
debug|debug-sa)
mode="$1"
echo "Trying to run amavisd-new in ${mode} mode..."
fixdirs
check_noncompatible_upgrade
exec ${DAEMON} ${PARAMS} "${mode}"
;;
status|monitor)
if [ -f $PIDFILE ]; then
kill -0 `cat $PIDFILE`
result=$?
if [ $result -eq 0 ]; then
echo "Ok"
result=0
else
echo $NAME" - Not running"
result=1
fi
else
echo "PID file not found"
result=1
fi
exit $result
;;
*)
N=/etc/init.d/amavis
#echo "Usage: $N {start|stop|restart|reload|force-reload|debug}" >&2
echo "Usage: $N {start|stop|restart|force-reload|debug|monitor|status}"
>&2
exit 1
;;
esac
exit 0
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/