<!--
   $FML$
-->

<chapter id="merge.internal.to.fml8">
	<title>
	他のＭＬシステムの設定を fml8 へ変換する処理について
	</title>


<sect1 id="merge.internal.fml4to8">
	<title>
	内部実装: fml 4.0 から fml 8.0 への移行について
	</title>

<sect2>
	<title>
	ケース 1. /var/spool/ml/elena/ を 4.0 から 8.0 へ移行する処理
	</title>

<para>
次のような処理をすることになります。
</para>

<para>
1) fml-devel をインストールする。この際、postfix の alias_maps に 
/var/spool/ml/etc/mail/aliases を追加する。
</para>

<para>
2) makefml --force newml elena 相当の処理を行なう。いろいろ fml8 で必
要なファイルを作る必要があるので、newml を実行してしまうほうがよい。本
当に makefml newml を実行するか、newml の実体の処理を呼び出すようにす
るかはどっちでもよい。たぶん後者でよい。
</para>

<para>
3) /var/spool/ml/elena のメンバーリストを fml8 形式へ変換する。
その際に、いろいろ変換しないといけない。
</para>

<para>
3-1)
IO::Adapter は ^# の行はコメントだと思って無視している。
よって、actives で off されているアドレスは消えているように
見える。
</para>

<para>
3-2)
off を s=skip と書いていると on 扱いになってしまう。
</para>

<para>
3-3)
m=... つまりまとめ行が無効になる。

しかしながら、歴史的に members で # address とかされていると
4.0 では OK だが、8.0 ではこのアドレスは見えない(認証する際の
候補にならない)。フォーマットを検査して warning を出すべきだろうか？
</para>

<para>
4) fml4 の aliases ファイル (/var/spool/ml/etc/fml/aliases) から該当す
るＭＬの部分を消して .db を再生成する。
</para>

</sect2>


<sect2>
	<title>
	ケース 2. /var/spool/ml/ 全体を 4.0 から 8.0 へ移行する
	</title>

<para>
ケース1を繰り返し、適用すればいいでしょう。
</para>

<para>
移行作業中にＭＬ全体を止めていいなら、fml4 の 
/var/spool/ml/etc/fml/aliases を削除してからケース１を適用する方が楽で
すね。もちろん、移行作業中は MTA を止めてください。
</para>

</sect2>


<sect2>
	<title>
	議論: 同一ドメインで、fml4 と fml8 を半々に使っている場合
	</title>

<para>
(X-Sequence: fml-devel 389 より)
</para>

<para>
同一ドメインで、fml4 と fml8 を半々に使っている場合、
次のような設定を施しておくのがよいでしょう。
</para>

<para>
fml4での設定(site_init.phとかconfig.ph)で
<screen>
push(@ACTIVE_LIST,"$DIR/recipients") if( -f "$DIR/recipients" ) ;
</screen>
一方、fml8での設定(site_default_config.cfやconfig.cf)で
<screen>
html_archive_dir = $ml_home_dir/htdocs
</screen>
</para>

</sect2>

</sect1>


</chapter>
