home FreeBSD Bike Misc Memorandum About

fml with qmail

インストール

 fmlはFreeBSDにおいてportsが提供されていませんので、portsを使わずにインストールすることにします。上記のサイトからソースをダウンロードします。fmlの開発はFreeBSDのそれに似て、release,stable,currentに分かれています。currentは日々変更されているfmlのソースです。中には実験的な変更や過渡的な機能(そしてBugも)などが含まれている可能性があります。また、この中に入っている機能がすべて次の公式リリースに入るとは限りません。stableとは定期的に公開されるリリースを作成するための開発ブランチです。このブランチに加えられる変更は原則として最低限のBugFixなどに限られています。そのためstableの最新版がお勧めです。releaseはstableのある時刻でのまとまった状態を表します。

想定する環境

 fmlの動作にはいくつか管理の環境を設定する必要があります。例えば、大規模なMLを管理するときには管理者グループをつくってその人たちそれぞれがMLの常態を変更できるようにする、ということなどが考えられます。ここで扱うMLは個人で小規模なMLなのでユーザ権限で管理する、ということを前提に説明します。ユーザfmlをつくって管理をするのもよい方法でしょう。

ディレクトリの作成

まず、fmlのインストールするパスを作ります。デフォルトではfml環境群をインストールするのは/usr/local/fml、MLひとつひとつの設定、アーカイブを保存するのは/var/spool/mlです。ルート権限でこれらのディレクトリを作った後に、MLを動作させるユーザをownerにしておきます。

% su
# mkdir /usr/local/fml
# mkdir /var/spool/ml
# chown bell/usr/local/fml /var/spool/ml
# exit

インストール

入手したソースを展開し、makeによってインストールします。これはfmlを実行するユーザ権限で行います。make中にいくつか設定を行います。

$ tar xvzf fml-4.0-stable-20020629.tar.gz
fml-4.0-stable-20020629/
fml-4.0-stable-20020629/src/
---snip---
fml-4.0-stable-20020629/makefml
fml-4.0-stable-20020629/README.jp
fml-4.0-stable-20020629/README.en
fml-4.0-stable-20020629/INSTALL.jp
fml-4.0-stable-20020629/INSTALL.en
$ cd fml-4.0-stable-20020629
$ make install

perl ./makefml install
unshift(@INC, /usr/local/fml-4.0-stable-20020629/src)
---NOT USING configuration file (for the first time)

THIS HOST (mail.f-bell.net) IS [i386-unknown-freebsd4.6]

---Please Define Your Fml System Configurations

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

DOMAIN NAME [f-bell.net]
FQDN [mail.f-bell.net]
EXEC FILES DIRECTORY [/usr/local/fml]
TOP LEVEL ML DIRECTORY [/var/spool/ml]

Language (Japanese or English) [English] Japanese

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

--- summary ---
DOMAIN: f-bell.net
FQDN: mail.f-bell.net
EXEC_DIR: /usr/local/fml
ML_DIR: /var/spool/ml
Language: Japanese
TimeZone: +0900

The current configuration is saved in /usr/local/fml/.fml/system

---Install the Fml system to /usr/local/fml. (y/n) [n] y

Installing fml system to /usr/local/fml
Fixing Path: src ............................................................................ libexec ..... sbin . cf . bin .................... www/cgi-bin ......... www/lib ... sys ......... module ..
Done.

Generate nroff manuals:

Installing bin ...
Installing sbin .
Installing libexec .
Installing cf .
Installing etc ....
Installing sys ..
Installing src .......
Installing drafts ..
Installing messages .....
Installing www ......
Installing module ............
Installing databases ...
Installing doc .....................................................................................
Done.

Setup CGI examples ........
CGI configuration is saved in /usr/local/fml/.fml/cgi.conf

-- Enjoy Internetworking!
bell@www>

MLの作成

/usr/local/fml/makefmlコマンドを使います。このコマンドでMLの種々の設定ができます。たとえば、jsbというMLを作成したいとします。

$ /usr/local/fml/makefml newml jsb
DO "newml" for jsb mailing list.
---Creating jsb mailing list
directory /usr/local/ml/jsb is created as UID=1000
directory /usr/local/ml/jsb/spool is created as UID=1000
---Generting configuration examples.

Generate template files in /usr/local/ml/jsb/
include include-ctl include-mead aliases Makefile crontab
fmlwrapper.c fmlwrapper.h

Generate qmail template files in /usr/local/ml/etc/qmail/alias/
.qmail-jsb .qmail-jsb-ctl .qmail-jsb-default .qmail-jsb-admin
.qmail-jsb-request .qmail-owner-jsb .qmail-owner-jsb-ctl

Update /usr/local/ml/etc/qmail/users/assign

Update /usr/local/ml/etc/crontab/bell

Create config.ph(/usr/local/ml/jsb/config.ph):
/usr/local/ml/jsb/cf -> config.ph ... Done.

Create template files for commands (help, guide ...)
help help-admin deny guide welcome confirm objective

Update /usr/local/ml/etc/aliases

The next step: update your MTA configuration. For example
% su root
# cat /usr/local/ml/jsb/aliases >> /etc/aliases
# newaliases

FYI: See templates in '/usr/local/ml/jsb/'
done.

 ここまでは割りとすぐにたどりつけると思います。makefmlが出してくれるMTA configurationはsendmailの場合です。とはいえ、qmailのための.qmail-hogeファイルの雛形を作ってくれます。ありがたいことです。

説明

FreeBSD4.6-Release

メイリングリストサーバであるfmlをMTAがqmailである環境で利用します。

http://www.fml.org/での一次情報もご覧ください。

2002/07/08

Creative Commons License
This work is licensed under a Creative Commons License.