[PREVIOUS CHAPTER] [NEXT CHAPTER]

3 インストール

    以下の例では /usr/local/fml に実行ファイル /var/spool/ml の下に各 ML
    のディレクトリ(例: elena MLは/var/spool/ml/elena)などを作ることにします。

    注意:	以下の例では /usr/local/fml と /var/spool/ml のオーナーは
    	仮想ユーザ fml (後述)になります。意味がわからないなら、
    	とりあえず以下のような呪文を実行してから make install して下さい
       例:
    	% su
    	ユーザ fml とグループ fml を作る (作り方はOSによって異なります)
    	# groupadd fml
    	# useradd -g fml fml

    	ディレクトリを作っておきます。
    	# mkdir /usr/local/fml /var/spool/ml
    	# chown fml /usr/local/fml /var/spool/ml
    	# chgrp fml /usr/local/fml /var/spool/ml

    3.1	どのユーザで fml を走らせるのか？

    ML の運用を特権ユーザでやるべきではありません。一般ユーザ(例えばML専用
    のアカウントやあなたのアカウント等)でインストールおよび運用をして下さ
    い。ML 用の特別な一般アカウント (e.g. fml 等) を作りその架空ユーザになっ
    てインストール・設定を行うとよいでしょう。

    「makefml install (FML 本体のインストール,後述) 自体は root で実行し、
    他の人にはいじれないようにする」という運用ポリシーはありえます。しかし、
    それ以外の操作、例えば makefml newml (MLの作成,後述)は一般ユーザで実行
    して下さい。

    3.2	OS の判定

    makefml は自動的にOSを判定し必要なら調整を行ないます。もし使っているOS
    が判定できなかったら -O オプションでタイプを強制できます。

    	% makefml -O i386-unknown-OSTYPE install

    OSによってはインストール情報が提供されていることもあります。チェックし
    てみて下さい。例えば Debian Linux なら /usr/doc/fml/ の下というように

    System V なマシンで"IPC はだめなので sendmail を exec するぜ"などの
    warning が出たら

    	% makefml -O unknown-unknown-sysv install

    を試してみる価値はあります(例: NEC EWS4800)。

    3.3	運用ポリシー(特に管理者が複数人の場合について)

    デフォルトでは fml は各MLの所有者にしかMLの記事などが見られないような
     permission でMLを作成します。あなたがインストールしようと思っている
    マシンでMLを走らせる人(オーナー、所有者)は

    	自分だけ?
    	自分以外の人もMLを走らせる?

    最初にその運用ポリシーを決めておいて下さい。自分一人しか使わないのであ
    れば次のセクションへ進んで下さい。ここではML群の管理グループがある場合
    について解説します。

    fml はインストールの最初で『どういうポリシーで運用するか？』を聞くため
    に次のような質問をします。

       Personal Use or ML-Admin-Group-Shared or fmlserv you use?
       Personal, Group, Fmlserv (personal/group/fmlserv) [personal]

    それぞれの項目の意味は次の通りです。いずれかを選択して下さい。
    権限が適当に設定されます。現代では通常 personal です。

    personal 	自分一人しか使わない( ML 群のオーナーは自分だけ)場合。
    		自分のアカウントないし ML 専用のアカウント fml などを使います。
    		すべてのファイルやディレクトリはそのアカウントだけで読
    		み書き可能です。fmlserv を使うならそのアカウントで走らせます。

    group		 "特定多数"のオーナー達がいる場合でfmlservは"使わない"場合。
    		ある group に属する人達は自由に ML を作成できます。
    		各 ML はその ML の所有者だけが読み書きできます。
    		/var/spool/ml が group writable 以外は personal と変わ
    		りません。

    fmlserv  	"特定多数"のオーナー達がいる場合でfmlservも"使う"場合。
    		ある group に属する人達は自由に ML を作成できます。
    		/var/spool/ml だけでなく一部のファイルは group の
    		人なら誰でも読み書きできるようになります。
    		これは fmlserv のために必要な設定です。
    		ただ、設定ファイルは各 ML のオーナーだけが変更できます。

    ○ ２、３の事例

    自分一人しか ML をいじらないのであれば単に自分が読み書きできれば十分
    (personal タイプ)ですが、逆に複数の人が複数の ML を作る場合

    	1. それぞれのアカウントで自由に作成することができる
    	2. 常に fml というアカウントで必要な操作を行う

    という２つの運用ポリシーが考えられます。

    1. 自分だけなら "personal"

    2.  ML をリモートで管理する人などが複数いたりしても newml をしたり直接
    ファイルをいじるなどの面倒を見るのがあなた一人ならやはり"personal"を選
    択して下さい。

    3. 複数の人がいてそれぞれのアカウントで自由に ML を作りたいという場合
    は group です。その場合にさらに fmlserv も使うというのであれば fmlserv
    を選択して下さい。

    ○ グループIDについて

    グループのデフォルトは fml です。例えば、 /etc/group に

    	fml:*:32765:オーナー1,オーナー2
    	(例えば、fml:*:32765:fukachan,hikari,elena のようにです)

    のようにオーナー達のアカウント名を,で区切って書きます。
    ＃この数字(32765)に深い意味はありません。

    ○ MTAに関する注意

    現在のMTAでは security のために通常 group writable (グループに入ってい
    れば書き込みができる権限)は認めないようになっています。group 設定を使
    わないのが望ましいですが、どうしても必要なら group writable を認めるよ
    うなMTAの設定変更が必要になります。例えば sendmail.cf をいじったり、
    recompile が必要です。設定は各OSやMTAによって変わります。詳しくはMTA附
    属のドキュメントを読んで下さい。例えば sendmail.cf なら
    DontBlameSendmail などの呪文のあたりを参照するなどになります。

    JPCERT/CC の技術メモの中に中村素典先生による非常に良い sendmail 解説があ
    るので困ったらここを読みましょう。

    http://www.jpcert.or.jp/ed/

       O DontBlameSendmail=GroupWritableDirPathSafe
       O DontBlameSendmail=GroupWritableIncludeFileSafe

    などが必要です。オプションについては上記ドキュメントなどを参照してくだ
    さい。

    3.4	インストーラ(makefml)を走らせる

    配布されているパッケージ(fml.*.tar.gz など)を展開すると、tar.gz を除い
    た名前のディレクトリが作成されます。そこに、fml が壱セット入っています。
    このディレクトリに移動して、

    	perl makefml install

    というコマンドを実行して下さい。
    そのマシンの上に fml システム一式をインストールします。

    ドキュメントをインストールしたくない場合は

    	env MKDOC=no perl makefml install

    として下さい。最近の UNIX なら env コマンドは普通あるはずです(POSIX に
    あるから)。
    補足1: perl のパス名は通常自動探索です。
    もし、perl のパス名の書換えをしたい場合は、
    環境変数を指定して下さい。
    例えば、/usr/local/bin/perl5 にしたい場合は、

       % env _PATH_PERL=/usr/local/bin/perl5 perl makefml install

    補足2: インストール時はロックをします。ロックなしでインストールなら

    	perl makefml -U install

    3.5	インストーラからの質問

    makefml はインストール時に、以下のような項目を聞いて来ます。

       Personal Use or ML-Admin-Group-Shared or fmlserv you use?
       Personal, Group, Fmlserv (personal/group/fmlserv) [personal ]

       DOMAIN NAME               [fml.org]
       FQDN                      [beth.fml.org]
       EXEC FILES DIRECTORY      [/usr/local/fml]
       TOP LEVEL ML DIRECTORY    [/var/spool/ml]

       Language (Japanese or English) [Japanese]

       TimeZone (TZ: e.g. +0900, -0300) [+0900]

    それぞれ次のような意味です。適当に入れて下さい。単にEnter?(CR) を押す
    と [] の中の値が自動的に設定されます。

       Personal Use or ML-Admin-Group-Shared or fmlserv you use?
       Personal, Group, Fmlserv (personal/group/fmlserv) [personal]

    注意:
    	FQDN と DOMAIN NAME の設定は、あなたのドメインの運用方法に依存
    	しています。デフォルト値は最も多いスタイルであろうと推測されて
    	いるケースで、『ドメインに一つのマスターメールサーバがある」よ
    	うな場合です。

    	あなたのドメインの運用方法がこの方式とは限らないので、
    	はっきりしない場合は、ネットワーク管理者に相談して下さい。

    (詳細は前節参照)

       *** ここで、group もしくは fmlserv を定義した場合には group ID
       *** の入力を促されます。
       *** あらかじめ決めておいた group を入れて下さい(前節参照)。

        Please define the group (in /etc/group) ML Operators use
        Group of Mailing List Operators (fml or GID ([\w\d]+)) [fml]

       DOMAIN NAME               [fml.org]

    	ドメイン名。
    	メーリングリストのアドレスの @ から後ろで使う部分。
    	いろいろなアドレスはデフォルトではこの値を使っています。
    	もしアドレスにマシン名まで含めたものを使いたいならここで
    	fake ですが FQDN を入れてしまって構いません。
    	virtual domain の場合も同様にここで virtual domain 名を入れます。

       FQDN                      [beth.fml.org]

    	Fully Qualified Domain Name(マシンのインターネット上での完全名)

       EXEC FILES DIRECTORY      [/usr/local/fml]

    	実行ファイル等の FML system をインストールする場所。
    	例えば、この値の場合

    		/usr/local/fml/fml.pl  (main executable file)
    		/usr/local/fml/doc/    (document directory)

    	等の場所にインストールされる。

       TOP LEVEL ML DIRECTORY    [/var/spool/ml]

    	ML(複数)はこの階層の"下"に作られる。例えば

    	   Elena  ML を作る場合は /var/spool/ml/elena
    	   Mirei  ML を作る場合は /var/spool/ml/mirei

    	といった具合に複数の ML がこの場所の下に作られていく。
    	ここは各 ML ごとの設定ファイルや記事を保存する場所です。

       LANGUAGE                  [Japanese]
    	"makefml newml" (後述)の際に ML 用に作られるドキュメントの言語
    	設定。インストールするマシンが .jp の場合[]の中つまりデフォー
    	ルトは日本語になります。"Japanese" か "English" が選べます。

    	「マシンは jp ドメインではないが日本人向け ML なので
    	  help を日本語にするために Japanese としておく場合」
    	などの使いわけを想定しています。

       TimeZone (TZ: e.g. +0900, -0300) [+0900]

    	文字どおり TIME ZONE (一応頑張ります)。 ちなみに日本は +0900 です

    3.6	/usr や /var を直接いじれない場合（例えばプロバイダ…）

    例えばprovider や大学の一般ユーザで

       /home の下だけならいじってよい。
       /etc/aliases 等はマシンの管理者にいじってもらう。

    というケースがありえます。その場合は

    	/home/fukachan/fml に実行ファイル
    	/home/fukachan/ml  に ML 群の階層

    を作るといった形になるでしょう。

    3.7	設定の保存

        Config Saved in [/usr/local/fml/.fml]

    設定したディレクトリ等の情報はこの場所に格納されます。次回以降 newml
    (後述)する時などはいつもこの値が使われます。
    ＃つまり上で選んだ EXEC FILES DIRECTORYで指定した場所の下の .fml です。

    3.8	CGIからmakefmlを呼び出す (4.0 new)

    インストールについてのメモはこちらを参照して下さい。

    http://www.fml.org/fml/INSTALL_CGI/

[PREVIOUS CHAPTER] [NEXT CHAPTER]

    Copyright (C) 1993-2000 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.