[Mailman-Users] Sendmail startup question

Eric Elder eric at 101sites.com
Tue Jan 11 22:43:36 CET 2005


I found a tuning tip setting (for Sendmail and Mailman) in the Mailman 
FAQ that I'd like to implement, but I want to check where exactly to 
make the change.

I've include the tip below, but here are my two questions:
1) I've found a startup script on my server at /etc/init.d/sendmail, 
but I'm not sure where to add these lines (if this is even the right 
file to add it to?)
2) For the change in the mm_cfg.py, when I define the SMTPPORT = 1313, 
is the 1313 a fixed value, or is that meant to be the "NNNN" value that 
I used in the earlier startup script.

Here's the tip from the FAQ "6.3. MTA Performance Tuning Tips for 
Sendmail."  It says:

----------------------------------
In your startup script, add:

         /usr/sbin/sendmail -bd -ODeliveryMode=defer \
                 
-ODaemonPortOptions=Name=MSA,Port=NNNN,M=E,Addr=127.0.0.1

  Where NNNN is some port number not otherwise used (you can test if 
something's in use by doing "telnet localhost NNNN" -- if it's refused, 
there's no daemon listening)  This sets up a sendmail process listening 
to the alternate port, in DEFER mode, but set to talk only to the 
localhost interface, so it's not accessible by anyoneother than your 
local machine: no open relay problems. To make mailman access that 
port, add this to your mm_cfg.py:

  # define alternate SMTP port
  SMTPPORT = 1313
----------------------------------


And here are the current contents of my file  /etc/init.d/sendmail


----------------------------------
#!/bin/bash
#
# sendmail      This shell script takes care of starting and stopping
#               sendmail.
#
# chkconfig: 2345 80 30
# description: Sendmail is a Mail Transport Agent, which is the program 
\
#              that moves mail from one machine to another.
# processname: sendmail
# config: /etc/mail/sendmail.cf
# pidfile: /var/run/sendmail.pid

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

# Source networking configuration.
[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network

# Source sendmail configureation.
if [ -f /etc/sysconfig/sendmail ] ; then
	. /etc/sysconfig/sendmail
else
	DAEMON=no
	QUEUE=1h
fi
[ -z "$SMQUEUE" ] && SMQUEUE="$QUEUE"
[ -z "$SMQUEUE" ] && SMQUEUE=1h

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

[ -f /usr/sbin/sendmail ] || exit 0

RETVAL=0
prog="sendmail"

start() {
	# Start daemons.

	echo -n $"Starting $prog: "
	if test -x /usr/bin/make -a -f /etc/mail/Makefile ; then
	  make all -C /etc/mail -s
	else
	  for i in virtusertable access domaintable mailertable ; do
	    if [ -f /etc/mail/$i ] ; then
		makemap hash /etc/mail/$i < /etc/mail/$i
	    fi
	  done
	fi
	/usr/bin/newaliases > /dev/null 2>&1
	daemon /usr/sbin/sendmail $([ "x$DAEMON" = xyes ] && echo -bd) \
			$([ -n "$QUEUE" ] && echo -q$QUEUE) $SENDMAIL_OPTARG
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/sendmail

	if ! test -f /var/run/sm-client.pid ; then
	echo -n $"Starting sm-client: "
	touch /var/run/sm-client.pid
	chown smmsp:smmsp /var/run/sm-client.pid
	daemon --check sm-client /usr/sbin/sendmail -L sm-msp-queue -Ac \
			-q $SMQUEUE $SENDMAIL_OPTARG
	RETVAL=$?
         echo
         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sm-client
         fi

	return $RETVAL
}

stop() {
	# Stop daemons.
	echo -n $"Shutting down $prog: "
	killproc sendmail
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sendmail
	if test -f /var/run/sm-client.pid ; then
		echo -n $"Shutting down sm-client: "
		killproc sm-client
		RETVAL=$?
		echo
		[ $RETVAL -eq 0 ] && rm -f /var/run/sm-client.pid
		[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sm-client
	fi
	return $RETVAL
}

# See how we were called.
case "$1" in
   start)
	start
	;;
   stop)
	stop
	;;
   restart|reload)
	stop
	start
	RETVAL=$?
	;;
   condrestart)
	if [ -f /var/lock/subsys/sendmail ]; then
	    stop
	    start
	    RETVAL=$?
	fi
	;;
   status)
	status sendmail
	RETVAL=$?
	;;
   *)
	echo $"Usage: $0 {start|stop|restart|condrestart|status}"
	exit 1
esac

exit $RETVAL
---------------------------------

Thanks,
Eric




More information about the Mailman-Users mailing list