Chapter 7. fml4 のMLを fml8 形式のMLへ変換する

Table of Contents
概要: fml4 から fml8 への移行(1) fml8 形式への変換
概要: fml4 から fml8 への移行(2) fml4 の実行ファイルを入れ換え、そのまま使う
概要: fml4 と fml8 の相違点
実装: ブートプロセスの変更

2004/03: fml4 の $DIR ($ml_home_dirにあたるもの)、たとえば /var/spool/ml/elena 以下のファイル群を fml8 形式の構成へ自動変換するコマンドを実装しました。 ただ、まだ設定ファイルの翻訳機能は予備的なもので、 順次、改良されていく予定です。

2004/11: fml4 の fml.pl を fml8 の fml.pl と入れ換え可能 としました。つまり、fml8 による fml4 の直接エミュレーションです。 これは fml4 の fml.pl を fml8 の fml.pl に入れ換えるだけで fml4 から fml8 へのアップグレードを可能にしようとするものです。

概要: fml4 から fml8 への移行(1) fml8 形式への変換

ようするに fml4 から fml8 への移行ということですが、 「fml4 の実行ファイルを fml8 で上書きすれば、そのまま動く」 というわけではありません。

今の fml8 では、それに近いことも出来ますが、その際にも、 設定ファイルの自動変換など、 バックグラウンドでは、 さまざまな処理が行なわれています。

そもそも 4 を 8 で上書きしてしまうと、一斉に移行を強制することになるし、 失敗した時のエラーリカバリが大変です。 やはり、少しずつ移行していきたいでしょう。 また、少しずつ移行する場合にも、できれば逆戻りが可能であるべきです。

そんなわけで、MLを一つ一つ移行できるような仕組みにしておきたい。 できれば、リカバリも出来ると良い、とおもうわけです。

ちなみに、いま考えている操作手順は、こんな感じです。

1. fml8 をインストールする

2. (Postfix の場合) alias_maps に fml8 の aliases を追加

   例:
	alias_maps	=	hash:/etc/mail/aliases
				hash:/var/spool/ml/etc/aliases (fml4)
				hash:/var/spool/ml/etc/mail/aliases (fml8)


3. fml4 の ML を fml8 へコンバートする。

   fml $ml mergeml fml4 の$DIR 
たとえば
   fml elena mergeml /var/spool/ml/elena
fml8 へ移行したいMLに対して 3. を繰り返す。

aliases や include の自動変換は、makefml mergeml コマンドが処理します。 また、fml4 の設定ファイルとメンバーリストを fml8 形式へ変換する作業も mergeml コマンドが行ないます。

さすがに、難しい設定てんこ盛りの config.ph は無理ですが、 簡単な config.ph であれば fml8 の config.cf へ全自動で変換できているつもりです。

なお、簡単な設定とは、Subject のタグと投稿制限の設定など fml4 の makefml config (メニュー)で設定変更ができたレベルのものを想定しています。

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.