sendmail.pid ファイルを見てみましょう、内容は
# cat /var/run/sendmail.pid 86 /usr/sbin/sendmail -bd -q15m
の 形をしています pid ファイルは通常以下のような形をしてると 考えますが
# cat /var/run/inetd.pid 61 # cat /var/run/named/named.pid 66 # cat /var/data/www/apache2/logs/httpd.pid 94
sendmail の sendmail.pid ファイルは 少し 形が異なっています。最初の行 は pid の 番号がきて その次の行は 起動した 内容(起動方法)が記載されて いるようです これを 良く見て 起動停止の 方法が 以下のようにすれば実現出 来るようです
sendmailの 再起動と停止は 以下のような 方法で 対応出来ると言う事です
# kill -HUP `head -1 /var/run/sendmail.pid` /* 再起動 */ or # kill `head -1 /var/run/sendmail.pid` /* 停止 */ # `tail -1 /var/run/sendmail.pid` /* 起動 */
これをみても にゃんたろうの ような 素人には どうしてるのか さっぱり
見えて来ません
”/var/run/sendmail.pid”というものの 中身を再度見ておきましょう
$ su - Password: # cat /var/run/sendmail.pid 86 /usr/sbin/sendmail -bd -q15m
それがどうした といわれれば
$ head -1 /var/run/sendmail.pid head: /var/run/sendmail.pid: 許可がありません /* そうですか ごめんなさい */ $ su - Password: # head -1 /var/run/sendmail.pid 86
ほたら
# tail -1 /var/run/sendmail.pid /usr/sbin/sendmail -bd -q15m
見ての通りです ”-bd -q15m”これが 何らかの動作を 規定しているようで す。そんでもって これの意味するものは 何かいなと云うことに なりますが デー モンモードにて起動させているんだくらいで 良いと思います。 その前に もう少し”sendmail.pid”について 見ておきますこれは sendmail の 現状を 見たものです 起動している状況です
# ps aux | grep sendmail | grep -v grep root 86 0.0 0.5 3312 1536 ? S 08:19 0:00 sendmail: accepti # ps ax | grep sendmail | grep -v grep 86 ? S 0:00 sendmail: accepting connections
此の状態で 以下の事を 試みてみましょう
# kill -HUP `head -1 /var/run/sendmail.pid` # ps aux | grep sendmail | grep -v grep root 352 0.0 0.5 3312 1536 ? S 09:15 0:00 sendmail: accepti # ps ax | grep sendmail | grep -v grep 352 ? S 0:00 sendmail: accepting connections
停止してまた起動しているようです pid 番号が 86 から 352 に 変わりまし た
# cat /var/run/sendmail.pid
352
/usr/sbin/sendmail -bd -q15m
設定ファイルを 書き換えて再起動させる場合は 此の方法を 取るようです。では 本当に停止させるには
# kill `head -1 /var/run/sendmail.pid` # ps aux | grep sendmail | grep -v grep # ps ax | grep sendmail | grep -v grep
これで 本当に停止したようです ここで 当然 ”sendmail.pid” の内容を確認しておきましょう
# cat /var/run/sendmail.pid
352
/usr/sbin/sendmail -bd -q15m
あれ?あれ??あれ??? なんか 動いてるの?ほんじゃ 起動させてみましょう
# /usr/sbin/sendmail -bd -q15m # ps aux | grep sendmail | grep -v grep root 372 0.0 0.5 3316 1536 ? S 09:25 0:00 sendmail: accepti # ps ax | grep sendmail | grep -v grep 372 ? S 0:00 sendmail: accepting connections # cat /var/run/sendmail.pid 372 /usr/sbin/sendmail -bd -q15m
しろうとにの にゃんたろうに とっては 奇妙な振舞に 見えますが”pid”の 番号が 変化している事が事実としてあります、それぞれ ”86”、”352”、” 372”の ように 変化している点を 考慮さ れれば良いと考えます。プロに とっては きっと、”あたり...のクラッカー”なので しょう!えれぇこっちゃ 何をしようとしているんだ
ほたら ”-bd -q15m”に ついて も みてゆくべ これは たまたま デーモ ンモードで 起動させています デーモンモード ですので この 悪魔は 15分に 1回の割合で 黙っていても メールを貯めている所から 送信する 役目を 持た せていると云うことですじゃ デーモンモードというからには そうじゃ無いモー ドも 当然有るのでしょうということです。
-bd デーモンモードで実行します。Berkley IPC が必要です。 sendmail は fork(2) を行い、バックグラウンドで動作し、ソケット番号 25 で SMTP コネクションを待ちます。通常このモードは、 /etc/rc か ら実行されています。 -q[time] キューのなかにあるメッセージを処理する間隔を設定します。 time を省略した場合は、キューの内容を一度だけしか処理しません。 time は、 `s' (秒)、 `m' (分)、 `h' (時間)、 `d' (日)、 `w' (週)の単位を付けた数字で指定します。たとえば、 `-q1h30m' や `-q90m' は、タイムアウトを 1 時間 30 分に設定します。 time が 指定されると、 sendmail はデーモンとしてバックグラウンドで実 行されます。このオプションは、問題なく -bd と共に指定可能で す。
デーモンは 悪魔なんかという ことはこの際おいておいて下さいここ ”http://www.freebsd.org/ja/copyright/daemon.html”を 見る事ができれば 有益な 事が得られるかもしれません ”daemon demon” 等で 検索してみられれば と 考えています
にゃんたろう 拝!
2006年 9月23日 (土) 22:48:27 JST 作成