http://www.ipa.go.jp/security/awareness/administrator/secure-web/chap4/4_qmail.html

を参考にqmailの設定をしているのですが、
これで紹介されている起動スクリプトでは
qmailの起動はできても停止ができないです。すいません、起動スクリプトをどう直せばいいでしょか。
よろしくお願いします。
↓はそのスクリプトです。

#vi /etc/rc2.d/S99qmailboot

#!/bin/sh
# Using splogger to send the log through syslog.
# Using qmail-local to deliver messages to ~/Mailbox by default.

/usr/local/bin/tcpserver -x /usr/local/etc/tcp.smtp.cdb -u 7791 -g 2108 0 smtp var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &

exec env - PATH=”/var/qmail/bin:$PATH” ¥
qmail-start ./Mailbox splogger qmail &

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント60pt

停止させるには

# ps -aux | grep qmail-send

// 上記コマンドで表示されたPIDでkillを実行(qmailを起動する毎に確認)

# kill PID

と KILLするしかないようですが、これで停止しないのでしょうか?

id:meichi

すいません、早速ありがとうございます。m(_ _)m

説明不足で申し訳ありませんでした、目的はqmailの設定変更をしたときに容易にqmailを再起動して反映させたかったからです。

ちなみにSolarisですが、qmailを起動すると下記のデーモンが動いています。

# ps -ef | grep qmail

root 264 1 0 08:38:10 ? 0:00 /var/qmail/bin/splogger smtpd 3

qmaild 265 264 0 08:38:10 ? 0:00 /usr/local/bin/tcpserver -x /usr/local/etc/tcp.smtp.cdb -u 7791 -g 2108 0

smtp

qmailr 4752 4749 0 13:09:01 pts/2 0:00 qmail-rspawn

qmailq 4753 4749 0 13:09:01 pts/2 0:00 qmail-clean

qmaill 4750 4749 0 13:09:01 pts/2 0:00 splogger qmail

qmails 4749 1 0 13:09:01 pts/2 0:00 qmail-send

root 4751 4749 0 13:09:01 pts/2 0:00 qmail-lspawn ./Mailbox

いただいた回答をやってみると下記になります。

# ps -ef | grep qmail-send

qmails 266 1 0 08:38:10 ? 0:00 qmail-send

# kill 266

# ps -ef | grep qmail

root 264 1 0 08:38:10 ? 0:00 /var/qmail/bin/splogger smtpd 3

qmaild 265 264 0 08:38:10 ? 0:00 /usr/local/bin/tcpserver -x /usr/local/etc/tcp.smtp.cdb -u 7791 -g 2108 0

smtp

qmailの設定変更の目的を考えると上記2つのデーモンは無視していいのでしょうか。

よろしくお願いします。

2004/11/18 13:23:00
id:sasada No.2

回答回数1482ベストアンサー獲得回数133

ポイント60pt

http://www.hatena.ne.jp/1100675674#

人力検索はてな - http://www.ipa.go.jp/security/awareness/administrator/secure-web/chap4/4_qmail.html を参考にqmailの設定をしているのですが、 これで紹介されている起動スクリプトで..

 質問文のURLと回答1のURLから察するに、下記のスクリプトで再起動できるのではないでしょうか。(手元に実行環境がないので未確認です。すみません)

#!/bin/sh

killproc() { # kill named processes

pid=`/usr/bin/ps -e |

/usr/bin/grep $1 |

/usr/bin/sed -e ’s/^ *//’ -e ’s/ .*//’`

[ ”$pid” != ”” ] && kill $pid

}

case ”$1” in

’start’)

# start smtp

ps -e | grep tcpserver > /dev/null 2>&1

if [ $? -eq 0 ]

then

echo ”tcpserver daemon already running. tcpserver start aborted”

exit 0

fi

if [ -x /usr/local/bin/tcpserver ]

then

/usr/local/bin/tcpserver -x /usr/local/etc/tcp.smtp.cdb -u 7791 -g 2108 0 smtp var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &

echo ”tcpserver is running.”

fi

# start qmail

ps -e | grep qmail-send > /dev/null 2>&1

if [ $? -eq 0 ]

then

echo ”qmail daemon already running. qmail start aborted”

exit 0

fi

if [ -x /var/qmail/bin/qmail-start ]

then

exec env - PATH=”/var/qmail/bin:$PATH”qmail-start ./Mailbox splogger qmail &

touch /var/lock/subsys/qmail

echo ”qmail is running.”

fi

;;

’stop’)

echo -n ”Shutting down qmail: ”

killproc qmail-send

killproc tcpserver

rm -f /var/lock/subsys/qmail

echo

;;

’restart’)

echo -n ”Restarting qmail: ”

$0 stop

$0 start

exit $?

;;

*)

echo ”Usage: S99qmailboot { start | stop | restart }”

;;

esac

exit 0

id:meichi

遅くなりましてすいません。

ありがとうございます。m(__)m

さっそく試してみます。

2004/11/22 11:02:35

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません