1. 概要
いつからだったかな、「pop」から「imap」へ切り替えています。
一応、両方のインタフェースは備えているのですが、わたし自身は、「imap」の方を使用しています。
で、その起動スクリプトが
/usr/local/etc/rc.d/courier-imap-imapd-ssl
なのですが、あるとき、システム再起動後にふと見ると・・・。
$ service courier-imap-imapd-ssl status
courier_imap_imapd_ssl is not running.
あれ、動いていない・・・。
起動してやれと。
$ service courier-imap-imapd-ssl start
Starting courier_imap_imapd_ssl.
usage: dirname string [...]
usage: mkdir [-pv] [-m mode] directory_name ...
Unknown option '-pid='
えぇぇ!?
2. 調査
詳細は割愛しますが、起動スクリプトを読むと
/usr/local/libexec/courier-imap/imapd-ssl.rc
ちゅうのを呼んでいることがわかります。
「ssl」版でないものが、下記のファイル名で用意されています。
/usr/local/libexec/courier-imap/imapd.rc
実は、こちらの方は起動できるんですな・・・。
2つを読み比べたり、中の値を見比べてわかりました。
/usr/local/libexec/courier-imap/imapd.rc
で「pid」ファイルとして「$PIDFILE」ちゅうのを定義しております。
下記の前後で、定義が有効になりまして
TLS_CACHEFILE=""
. /usr/local/etc/courier-imap/imapd-ssl
. /usr/local/etc/courier-imap/imapd
case $1 in
「/var/run/imapd.pid」という値が定義されております。
「ssl」の方で、同じような定義があって「$SSLPIDFILE」というシンボルが使われておるのですが。
同じ処理を通った後、「$SSLPIDFILE」の値が設定されておらんのだな・・・。
でまぁ
vi /usr/local/etc/courier-imap/imapd-ssl
# DEFAULT SETTING from /usr/local/etc/courier-imap/imapd-ssl.dist:
#
#SSLPIDFILE=/var/run/imapd-ssl.pid
#
を(/usr/local/etc/courier-imap/imapd)を真似て、下記へ書き換えました。
# DEFAULT SETTING from /usr/local/etc/courier-imap/imapd-ssl.dist:
#
#SSLPIDFILE=/var/run/imapd-ssl.pid
#
SSLPIDFILE=/var/run/imapd-ssl.pid
3. 起動
前項後
service qmail-smtpd-ssl start
で、無事起動でけました。
$ service qmail-smtpd-ssl status
courier_imap_imapd_ssl is running as pid 86739.
とりあえず、落ち着きましたわ。