○ dovecot-1.2.x起動スクリプト

・dovecot-1.2.13を自動起動するスクリプトです
・完全コピーしないこと (エラーが出ることあり)
・CentOSのdovecot起動スクリプトを参考にしています

・"#" で始まる行はコメントとして解釈され、"$" の付いた文字は変数を表します
・スクリプトの先頭で, 処理を行うシェルを明示します (#!/bin/bash)
・# chkconfig: の#のあとに半角スペース
・# description: の#のあとに半角スペース
・. /  . はファイルを読み込むコマンド 後に半角スペース
・[ ] はテストコマンドです 半角スペースを忘れないように
・[ = ] テストコマンド内は = の前後に半角スペース
・環境変数等価式=の場合、前後に半角スペースをいれない
・A && B Aが正ならばBを実効
・A || B Aが為ならばBを実効
・$0 はスクリプト本体 $1は 第1引数

○/etc/rc.d/init.d/dovecot

#!/bin/bash
#
# /etc/rc.d/init.d/dovecot
#
# Starts the dovecot daemon
#
# chkconfig: 235 54 54
# description: Dovecot Imap Server
# processname: dovecot
# Source function library.
. /etc/init.d/functions

test -x /usr/local/sbin/dovecot || exit 0

RETVAL=0
PATH=$PATH:/usr/local/sbin
prog="Dovecot Imap"

start() {
        echo -n $"Starting $prog: "
        daemon dovecot -c /etc/dovecot.conf
        RETVAL=$?
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dovecot
        echo
}

stop() {
        echo -n $"Stopping $prog: "
        killproc dovecot
        RETVAL=$?
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dovecot
        echo
}

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

exit $RETVAL

dovecot

○ Copyright(c) 528p.com All Rights Reserved.