UJP - 技術情報1

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

qmail-pop3dをdaemontoolsに登録する

qmail-pop3dをdaemontoolsに登録する


0.改訂履歴

  • 2006.02.09 新規作成
  • 2006.02.15 微調整
  • 2006.08.13 qmailsアカウントをqmailpアカウントへ変更
  • 2006.10.04 multilogの保存期間について追記

1.はじめに

 このドキュメントでは,qmail-pop3dをdaemontoolsのsvscan配下に設置して稼働管理を行うまでの手順を説明する. この作業を行うには,qmail,tcpserverはもちろん,checkpasswordがインストールされている必要がある.

 なお,使用しているOSは,RedHat Linux ES3.0である.

2.設定

  • サービスディレクトリのリンク元になるディレクトリを確認する.
[root@neptune root]# cd /var/qmail/supervise/
[root@neptune supervise]# ls
qmail
[root@neptune supervise]#
  • pop3d用のサブディレクトリを作成する.
[root@neptune supervise]# mkdir -p pop3d/log/main
[root@neptune supervise]# chmod +t pop3d
[root@neptune supervise]# 
  • 作成したログディレクトリのオーナーを変更する.
[root@neptune supervise]# cd pop3d
[root@neptune pop3d]# chown -R qmailp:nofiles log
[root@neptune pop3d]# cd ..
[root@neptune supervise]#  
コピペ用
cd /var/qmail/supervise/ 
mkdir -p pop3d/log/main
chmod +t pop3d
cd pop3d
chown -R qmailp:nofiles log
cd ..  
  • pop3dの起動スクリプトを作成する.
[root@neptune supervise]# cat pop3d/run
#!/bin/sh

exec env - PATH="/var/qmail/bin:/usr/local/bin:/bin:/usr/bin" ¥
  /usr/local/bin/tcpserver -v -x ¥
  /etc/tcpserver/pop3_rules.cdb -R -H 0 pop3 ¥
  /var/qmail/bin/qmail-popup neptune ¥
  /bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir 2>&1
[root@neptune supervise]# 
[root@neptune supervise]#
  • 今回稼働させるサーバのホスト名がneptuneなのだが,それぞれインストールする環境に合わせて変更する.
  • 次に,ログ用のシェルを作成したモノを確認する.
[root@neptune supervise]# cat pop3d/log/run
#!/bin/sh
exec /usr/local/bin/setuidgid qmailp /usr/local/bin/multilog t s1000000 n200 /var/ser
vice/pop3d/log/main
[root@neptune supervise]# 
  • multilogでは,sオプションではログの最大バイトサイズ,nオプションは保存世代数を記録している.
  • 実効権限を付ける.
[root@neptune supervise]# 
[root@neptune supervise]# chmod ogu+x /var/qmail/supervise/pop3d/run 
[root@neptune supervise]# chmod ogu+x /var/qmail/supervise/pop3d/log/run
[root@neptune supervise]#
コピペ用
chmod ogu+x /var/qmail/supervise/pop3d/run 
chmod ogu+x /var/qmail/supervise/pop3d/log/run
  • プロセスが稼働しているか確認する.
[root@neptune supervise]# ps -ef | grep pop3
root      3278 12578  0 19:31 pts/1    00:00:00 grep pop3
[root@neptune supervise]# 
  • 稼働していない. 既にqmail-pop3dのプロセスが稼働していたら,killする.
  • サービスディレクトリに移動する.
[root@neptune supervise]# cd /var/service/
[root@neptune service]#
  • svscanにpop3dを起動させるために,シンボリックリンクを作成する.
[root@neptune service]# ls -la
合計 8
drwxr-xr-x    2 root     root         4096  2月  9 15:58 .
drwxr-xr-x   27 root     root         4096  2月  7 16:52 ..
lrwxrwxrwx    1 root     root           26  2月  9 15:58 qmail -> /var/qmail/supervise/qmail
[root@neptune service]# ln -s /var/qmail/supervise/pop3d /var/service/pop3d
[root@neptune service]# ls -la
合計 8
drwxr-xr-x    2 root     root         4096  2月  9 19:32 .
drwxr-xr-x   27 root     root         4096  2月  7 16:52 ..
lrwxrwxrwx    1 root     root           26  2月  9 19:32 pop3d -> /var/qmail/supervise/pop3d
lrwxrwxrwx    1 root     root           26  2月  9 15:58 qmail -> /var/qmail/supervise/qmail
[root@neptune service]#
  • 5秒以上待って,ステータスを確認する.
[root@neptune service]# /usr/local/bin/svstat /var/service/pop3d /var/service/pop3d/log
/var/service/pop3d: up (pid 27306) 206 seconds
/var/service/pop3d/log: up (pid 27308) 206 seconds
[root@neptune service]#  
  • daemontoolsによって起動されていることが確認できた.
  • いつ見ても秒数が少ない場合は,起動&異常終了を繰り返していると思われるので,起動スクリプトやディレクトリアクセス権限などを確認する.


広告スペース
Google