[PREVIOUS CHAPTER] [NEXT CHAPTER]
5 ML を作る

基本的な設定の変更やメンバー登録/削除などはコマンドで実行できます。
#fml 2.1以前からのアップグレードの時は 16.0 も参照して下さい。

コマンドのシンタックスは次のようになります。

	makefml コマンド [引数]

5.1	ML を作る時

例: Elena ML を作る時は

	/usr/local/fml/makefml newml elena

を実行します。 ML のHOMEディレクトリ

	/var/spool/ml/elena

の下に include や aliases をはじめ、必要なサンプルが作成されます。
(sendmailの場合)見本の aliases ファイルを /etc/aliases に追加して 
newaliases したら終わりです。まとめ送りについては後述(5.3)。
#その時 unsafe などのエラーがでたら? → 11.0

/var/spool/ml/elena がすでにある場合は上書きせず、エラーになるよ
うになっています。意図的に上書きするなら

	/usr/local/fml/makefml -F newml elena

を実行して下さい。

/var/spool/ml/etc/qmail/ には qmail 用の見本が作成されます。いくつかの
MTAについては別途解説のドキュメントがあります。そちらも見て下さい。

sendmail	INSTALL_with_SENDMAIL (almost dummy :-)
postfix		INSTALL_with_POSTFIX
qmail		INSTALL_with_QMAIL
exim		INSTALL_with_EXIM

最近のMTAは不正中継を防止するのがデフォルトだったりするので、配送する
ためには設定を変更する必要が必要なことが多々あります。詳細については
各MTAのマニュアルやFAQを読んで設定して下さい。

別の mirei MLを作りたい時は makefml newml mirei を実行するだけです。
/var/spool/ml/mirei の下に mirei MLの見本が作成されます。以下同様です。

作成される設定の見本は以下のようなものです。既にそれぞれの ML 用にカス
タマイズされています。

[ファイル]
	aliases		/etc/aliases にはりつける見本(出力されたものと同じ)
	include		include file 投稿するアドレスのためのもの
	include-ctl	include file コマンド用のアドレスのためのもの
	include-mead 	mead (エラーを解析してエラーを起こすアドレスを削
			除するプログラム)を使う時(デフォルトは使わない)

	cf		config.ph の元 (See 9.0)
	config.ph	メーリングリストの設定ファイル
			(config.ph については 9.0)

	guide		ガイド
	help		 ML やコマンドの使い方
	help-admin	リモート管理のためのコマンドの一覧
	objective	 ML の目的について
	welcome		自動登録時に返す「ようこそ…」の文面
	confirm		自動登録(confirmationモード)で使う文面
	crontab		vixie cron 用の定義ファイルの見本
	deny		メンバー以外からの投稿に拒否の旨を伝える

	fmlwrapper.c	C Wrapper
	fmlwrapper.h	fmlwrapper.c のヘッダファイル

5.2	ML を削除する時

	rm -fr /var/spool/ml/MLの名前

でファイル群を消し、そして /etc/aliases から該当する ML の部分を削って 
newaliases をかけます。

5.3	まとめ送り

まとめ送りはcronを利用します。NetBSD のような Vixie Cron がOS附属の
場合、elena ML の /var/spool/ml/elena/crontab が見本なので

	% crontab /var/spool/ml/elena/crontab 

とすればまとめ送りを設定できます。

	/var/spool/ml/etc/crontab/ユーザの名前

というファイルには各 ML オーナーが管理している ML 全部のまとめ送り項
目が入った見本です。これは ML を増やすたびに新しいまとめ送りの設定が
自動的に付け加えられます。cron の設定をいっきに更新するには makefml
newml で作成後、

	% crontab /var/spool/ml/etc/crontab/ユーザの名前

として下さい。USERNAME.master については後述。MLの数が増えてきたら

	% crontab /var/spool/ml/etc/crontab/ユーザの名前.master

とするのがよいでしょう(下の記述 => ”MLが多くなってきたら?”)。

Vixie Cron でない OS についてはマニュアルで cron を調べるとか 
doc/Japanese/ を見て下さい。

*** MLが多くなってきたら? (ISPのシェルアカウントなどでは初めからこ
*** のケースでしょう)
=
***** When a lot of ML run in ONE MACHINE? (must be always yes on ISP
***** accounts)?

(どんなプログラムにも当てはまる)当然のことですが、複数の人が複数の ML 
でまとめ送りをしている場合、全員が cron で毎時0分に msend を走らせる
とシステムの負荷が瞬間最大風速的に上がります。cron はいわれた通り走る
だけでチューニングはしてくれません。システム管理者が2、3分ずつずらして
走らせるなどの運用的なシステムチューニングに気を配ることが重要です。

makefml が作成する /var/spool/ml/etc/crontab/USERNAME.master は

   0 * * * * /usr/local/fml/bin/msend_master.sh -E /usr/local/fml -M /var/spool/ml

のような見本を作ります。msend_master.sh は /var/spool/ml (-M オプショ
ンで変更できる)の下にあるML全部に対してまとめ送り作業を順番に実行す
るためのスクリプトです。複数の ML のまとめ送りが一斉に走らないように
するために有効です。


別の例(crontab の設定で逃げる):

   0 * * * * /usr/local/fml/msend.pl /var/spool/ml/elena -q
   2 * * * * /usr/local/fml/msend.pl /var/spool/ml/mirei -q
   4 * * * * /usr/local/fml/msend.pl /var/spool/ml/anna  -q

5.4	fmlserv (Listserv もしくは majordomo的インターフェイス)

fmlserv は listserv スタイルのインターフェイスです。elena-ctl 宛に
『help』というコマンドを送るのではなく fmlserv に『help elena』を送る
ようなコマンド体系が使えるようになります。

fmlserv を作る時はpersonal/group/fmlservのタイプに関わらず

	/usr/local/fml/makefml fmlserv

を実行して下さい。各タイプにより permission は適宜変更されます。そして
設定見本が

	/var/spool/ml/fmlserv

に作られます。 ML を作る時と同様に aliases を設定して下さい。

コマンドは単にコマンドの書き方に ML 名が加わっているだけです。

	コマンド   ML  [fml標準のコマンドのオプションと引数]

というコマンド形式になります。単に一枚皮が被さっているだけなのでコマン
ドの動作はシンタックスを除いて、全く同じです。また各 ML の config.ph 
に従って実行されるので、各 ML のコマンド用のアドレスに送った時と同じ動
きをします。(config.ph のかきかたについては => 9.0)

○ 複数の ML オーナーがいる場合の注意

fmlserv は各 ML の記事が読めたりログファイルの読み書きができる必要があ
ります。複数人で fmlserv を使う場合に推奨できる方法はそのマシンに特別
のアカウント(たとえば fml という特別なアカウント)を作成し、fmlserv も
各 ML もそのユーザ(fml)の所有にして personal 扱いで作成する方法だとお
もいます。 ML の設定をいじる時はいちいち su fml (switch user) するわけ
です。もし複数の人が自分のアカウントで ML をいじりたいなら group
writable であるような設定が必要なことに注意して下さい。最初に fmlserv 
タイプを選択したらそのような設定で作成されます。


[PREVIOUS CHAPTER] [NEXT CHAPTER]
Copyright (C) 1993-2001 Ken'ichi Fukamachi
All rights of this page is reserved.

# This Document(html format) is automatically geneareted by fwix.pl. 
# fwix (Formatter of WIX Language) is fml document formatter system
# designed to generate plaintext, html, texinfo and nroff from one file.