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		メンバー以外からの投稿に拒否の旨を伝える

	fml.c		C Wrapper
	config.h	fml.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/op.jp の cron の章を見て下さい。

*** 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-1999 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.
#
# Copyright (C) 1993-1999 Ken'ichi Fukamachi
#          All rights reserved. 
#               1993-1996 fukachan@phys.titech.ac.jp
#               1996-1999 fukachan@sapporo.iij.ad.jp
# 
# FML is free software; you can redistribute it and/or modify
# it under the terms of GNU General Public License.
# See the file COPYING for more details.