#!/bin/sh # # opensmtpd This shell script takes care of starting and stopping # OpenSMTPD on RedHat or other chkconfig-based system. # # chkconfig: 2345 80 30 # processname: smtpd # config: /etc/mail/smtpd.conf # pidfile: /var/run/smtpd.pid # description: OpenSMTPD is a Mail Transport Agent, which is the program \ # that moves mail from one machine to another. # Source function library . /etc/rc.d/init.d/functions # Get network config . /etc/sysconfig/network # Check that networking is up. if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then msg_network_down "OpenSMTPd" exit 1 fi else exit 0 fi # Get service config - may override defaults [ -f /etc/sysconfig/smtpd ] && . /etc/sysconfig/smtpd pidfile="/var/run/smtpd.pid" start() { # Check if the service is already running? if [ -f /var/lock/subsys/opensmtpd ]; then msg_already_running "OpenSMTPd" return fi msg_starting "OpenSMTPd" daemon /usr/sbin/smtpd RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/opensmtpd } stop() { if [ ! -f /var/lock/subsys/opensmtpd ]; then msg_not_running "OpenSMTPd" return fi # Stop daemons. msg_stopping "OpenSMTPd" killproc --pidfile $pidfile smtpd -TERM rm -f /var/lock/subsys/opensmtpd } condrestart() { if [ ! -f /var/lock/subsys/opensmtpd ]; then msg_not_running "OpenSMTPd" RETVAL=$1 return fi stop start } RETVAL=0 # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; try-restart) condrestart 0 ;; force-reload) condrestart 7 ;; status) status smtpd RETVAL=$? ;; *) msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}" exit 3 esac exit $RETVAL