&fmldevel; の概要 &fmldevel; でできること &fml4; の再実装にあたっての山場はすでに越えたと思います。 でも、こまごまとしたものはいろいろと残っていますが… 設定ファイル形式が新しくなりました。 postfix スタイルの設定ファイルです。 makefml によるコマンド操作: MLの作成/削除、 メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 ログを見る、 メンバーリストを見る、 他 CGI による操作: MLの作成/削除、 メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 ログを見る、 メンバーリストを見る、 配送、 ヘッダの書き換え、 フィルタ( 4.0 の Envelope Filter と Content Filter に相当するもの )、 コマンドメール(一般ユーザ): メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 ログを見る、 コマンドメール(リモート管理者): メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 ログを見る、 エラーメール解析 IPv6 による配送 スレッド追跡システム(CUI と CGI を含む): (fmlthread fmlthread.cgi) 記事の HTML 化(デフォルトで HTML 版も作る): fmlhtmlify および makefml に HTML 化コマンドがあります。 MTA が起動するメインのプログラム: fml.pl distribute command 管理を支援するユーティリティ: fmlconf fmldoc fmlhtmlify fmlsch fmlthread fmlspool makefml 抽象化 IO 層 メンバーファイルをファイル、/etc/group, NIS, MySQL から取り出すことができます。 インストール作業の概略 &fmldevel; は &fml4; 相当のものを完全に一から書き直すプロジェクトです。 使い方の見かけは &fml4; に"似せて"います。 インストールにおける主な注意点は root での作業、 configure の使用、 そして /usr/local/etc/fml/ 以下のファイル、 特に /usr/local/etc/fml/main.cf というグローバルな設定ファイルの編集です。 さて、いつものように elena MLの作成過程を例にとりましょう。 インストールのおおまかな流れは次のようになります。 ソースをダウンロードして、展開して下さい。 ユーザ root でインストールをします。 ユーザ root になり、 まず、ユーザ fml とグループ fml を作成します。 その後、 configure および make install を実行して下さい。 % su root # groupadd fml # useradd -m -g fml fml # ./configure # make install (デフォルトでは)インストーラは /usr/local/bin デフォルトでは /usr/local ディレクトリ以下に 適宜サブディレクトリが作られます。 configure のオプション で変更が可能です。 に fmldoc fmlconf fmlthread makefml fmlhtmlify fmlsch などをインストールします。 実は、 これらは /usr/local/libexec/fml の下の実体を呼び出す単なる wrapper です。 ユーザ fml で elena MLを作る。 % su fml % makefml newml elena MTA から fml を起動するために MTA の設定をしてください。 ML の動作テストをしてください。 ML のカスタマイズをする。 &fml4; と異なり root でインストールすることに注意して下さい。 MLを作る makefml を使ってMLを作成します。 デフォルトのドメイン(例: fml.org)の場合、 makefml 使い方は &fml4; の時と同様です。 elena@fml.org MLを作るには % su fml % makefml newml elena とします。 詳しくは を参照してください。 一方、バーチャルドメイン(nuinui.net)の場合は、 MLのアドレスを全部指定して下さい。 elena@nuinui.net を作る場合は、次のように実行して下さい。 % su fml % makefml newml elena@nuinui.net MLのメンバーを登録する デフォルトのドメイン(例: fml.org)の場合は、 % su fml % makefml subscribe elena rudo@nuinui.net で構いません。 一方、バーチャルドメイン(nuinui.net)の場合は、 MLのアドレスを全部指定して下さい。 % su fml % makefml subscribe elena@nuinui.net fukachan@sapporo.iij.ad.jp MLのメンバーから削除する デフォルトのドメイン(例: fml.org)の場合は、 % su fml % makefml unsubscribe elena rudo@nuinui.net で構いません。 一方、バーチャルドメイン(nuinui.net)の場合は、 アドレスを全部指定して下さい。 % su fml % makefml unsubscribe elena@nuinui.net fukachan@sapporo.iij.ad.jp MLの設定のカスタマイズ まだ makefml config は使えません。ごめんなさい。 ファイルを手で編集して下さい。 そのホスト共通の設定 /usr/local/etc/fml/site_default_config.cf はこのホストで動く fml すべてに影響を与えます。 これは &fml4; の site_init.ph に相当するものです。 フォーマットは、config.cf (後述)と同様で、 指定できる変数も config.cf と同じです。 elena MLの設定 elena MLの設定のカスタマイズは /var/spool/ml/elena/config.cf を編集して下さい。 フォーマットは postfix の設定ファイルと同様です(&fml4; の config.ph よ りは cf にやや近いですが)。 適宜必要な項目だけを追加して下さい。 指定しない場合はデフォルト値が使われます。 デフォルト値はインストールしたバージョンに依存しており、 /usr/local/etc/fml/defaults/バージョン番号/default_config.cf というファイル中で定義されています。 これは perl のライブラリが /usr/local/lib/perl/5.00503/ のように バージョン番号付のディレクトリに置かれるのと似ています。 また、ライブラリなどのインストール先も fml のバージョンごとに 別のディレクトリになっていることに注意して下さい。 この仕組みのおかげでアップグレードしても元に戻すのが簡単です。 これは &fmldevel; の特徴です。