RedHat 6.2, Perl 5.6.1, SpamAssassin 2.55

Hello,

This morning I came into the office to find that qmail-scanner had gone
insane and lots all nights emails for me.  I rebooted the system to try to
get everything back to ground zero.  The problem was that the spamd init
script decided to hang and not allow the boot to progress.

I ssh'd in and killed it off, so the rest of the system could boot up.  Then
I went hunting for the problem.  Turns out that spamd works find if invoked
from the command line with a "background" ampersand (&).  It doesn't work
fine when invoked by "service spamassassin start" (a.k.a.
/etc/rc.d/init.d/spamassassin start)

Here's what I see in the "ps fax" when trying to start the service:

19828 pts/0    S      0:00  |               \_ sh /sbin/service spamassassin
start
19834 pts/0    S      0:00  |                   \_ sh
/etc/rc.d/init.d/spamassassin start
19845 pts/0    S      0:00  |                       \_ initlog -q -c spamd
19846 pts/0    S      0:02  |                           \_ perl
/usr/local/bin/spamd

It just hangs there.  The prompt for the screen starting it stays at:

Starting spamd:

Any suggestions on how to put together an init script that won't hang my
system on boot?

Thanks,

Russell

Here's my init script (copied from the recommended RedHat script from SA
tarball)

#!/bin/sh
#
# spamassassin This script starts and stops the spamd daemon
#
# chkconfig: 2345 80 30
#
# description: spamd is a daemon process which uses SpamAssassin to check
#              email messages for SPAM.  It is normally called by spamc
#              from a MDA.

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

# Source spamd configuration.
if [ -f /etc/sysconfig/spamassassin ] ; then
        . /etc/sysconfig/spamassassin
else
        OPTIONS="-d -c -a"
fi

[ -f /usr/bin/spamd -o -f /usr/local/bin/spamd ] || exit 0
PATH=$PATH:/usr/bin:/usr/local/bin

# See how we were called.
case "$1" in
  start)
        # Start daemon.
        echo -n "Starting spamd: "
        daemon spamd $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch /var/lock/subsys/spamd
        ;;
  stop)
        # Stop daemons.
        echo -n "Shutting down spamd: "
        killproc spamd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/spamd
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  condrestart)
       [ -e /var/lock/subsys/spamd ] && $0 restart
       ;;
  status)
        status spamd
        ;;
  *)
        echo "Usage: $0 {start|stop|restart|status|condrestart}"
        exit 1
esac

exit 0




-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?   SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to