Безопасность и оптимизация Linux.Редакция для Red Hat

Конфигурация скрипта “/etc/rc.d/init.d/sendmail” для всех типов конфигураций.


Настройка скрипта “/etc/rc.d/init.d/sendmail” для запуска и остановки демона Sendmail.

Создайте скрипт-файл sendmail (touch /etc/rc.d/init.d/sendmail) и добавьте в него следующее:

#!/bin/sh

#

# sendmail Это shell скрипт, который заботится о запуске и остановки

# sendmail.

#

# chkconfig: 2345 80 30

# Описание: Sendmail – это почтовый транспортный агент, который \

# используется для перемещения почты с одной машины на другую.

# имя процесса: sendmail

# конфигурационный файл: /etc/sendmail.cf

# pidfile: /var/run/sendmail.pid

# Библиотека исходных функций.



. /etc/rc.d/init.d/functions

# Исходная сетевая конфигурация.

. /etc/sysconfig/network

# Исходная конфигурация sendmail.

if [ -f /etc/sysconfig/sendmail ] ; then

. /etc/sysconfig/sendmail

else

DAEMON=yes

QUEUE=1h

fi

# Проверка, что сеть включена.

[ ${NETWORKING} = "no" ] && exit 0

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

RETVAL=0

# Смотрим как мы вызываем скрипт.

case "$1" in

start)

# Запуск демона.

echo -n "Starting sendmail: "

/usr/bin/newaliases > /dev/null 2>&1

for i in virtusertable access domaintable mailertable ; do

if [ -f /etc/mail/$i ] ; then

makemap hash /etc/mail/$i < /etc/mail/$i

fi

done

daemon /usr/sbin/sendmail $([ "$DAEMON" = yes ] && echo -bd) \

$([ -n "$QUEUE" ] && echo -q$QUEUE)

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/sendmail

;;

stop)

# Остановка демона.

echo -n "Shutting down sendmail: "

killproc sendmail

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sendmail

;;

restart|reload)

$0 stop

$0 start

RETVAL=$?

;;

status)

status sendmail

RETVAL=$?

;;

*)

echo "Usage: sendmail {start|stop|restart|status}"

exit 1

esac

exit $RETVAL

Сейчас, сделаем скрипт исполняемым и изменим права доступа по умолчанию:

[root@deep /]# chmod 700 /etc/rc.d/init.d/sendmail

Создадим символическую ссылку rc.d для Sendmail:

[root@deep /]# chkconfig --add sendmail

Запустим Sendmail сервер вручную, используя следующую команду:

[root@deep /]# /etc/rc.d/init.d/sendmail start

Starting sendmail: [ OK ]



Содержание раздела