Ниже приведен очень простой сценарий, который может применяться на многих системах для запуска и останова психотерапевтического демона. Назовите его eliza, сделайте выполняемым и сохраните в каталоге /etc/init.d (или в том каталоге, где находятся подобные сценарии в вашей системе). Затем создайте ссылку на этот сценарий в файле /etc/r3.d/S20eliza, опять-таки, указав правильное имя пути в соответствии с устройством вашей операционной системы.
#! /bin/sh # Сценарий запуска психотерапевтического сервера case "$1" in 'start') if [ -х /usr/local/bin/eliza_daemon.pl ]; then echo -n "Starting psychotherapist: " /usr/local/bin/eliza_daemon.pl fi ;; 'stop') if [ -e /var/tmp/eliza.pid ]; then echo -n "Shutting down psychotherapist" kill -TERM "cat /var/tmp/eliza.pid" fi ;; *) echo "usage: $0 (start|stop) ;; esac
Рекомендуем еще раз проверить сценарий из командной строки, прежде чем окончательно внести его в каталог сценариев начальной загрузки.
Следует также учитывать, что сценарии начальной загрузки выполняются с правами суперпользователя, поэтому вновь установленное сетевое приложение также будет выполняться от имени привилегированного пользователя. Как правило, этого следует избегать. Далее будет описано, как в сценариях, запускаемых с правами суперпользователя, отказаться от этих привилегий и перейти к их выполнению от имени обычного пользователя. Иным образом, можно использовать для запуска сценария команду su с правами обычного пользователя. В упомянутых выше двух сценариях командно интерпретатора замените вызов /usr/lopal/bin/eliza_daemon.pl следующим:
su nobody -с /usr/local/bin/eliza_daemon.pl
В результате сервер будет запущен в учетной записи nobody. В документации приведено превосходное описание процесса начальной загрузки для многих популярных систем UNIX.