ケーススタディ: 他のMLシステムの設定を &fml8; へ変換するには?
内部実装: &fml4; から &fml8; への移行について
ケース 1. /var/spool/ml/elena/ を 4.0 から 8.0 へ移行する処理
次のような処理をすることになります。
1) &fml8; をインストールする。
この際、postfix の alias_maps に
/var/spool/ml/etc/mail/aliases
(まだ、この段階では中身のないファイルでよい)
を追加する。
2) makefml --force newml elena 相当の処理を行なう。
&fml8; で必要なファイルをいろいろと作る必要があるので、
newml を実行してしまうほうがよい。
本当に makefml newml を実行するか、
newml の実体の処理を呼び出すようにするかはどちらでもよい
(が、たぶん後者の実装でよい)。
3) /var/spool/ml/elena のメンバーリストを &fml8; 形式へ変換する。
その際にも、いろいろ変換しないといけない。
3-1)
IO::Adapter は ^# の行はコメントだと思って無視している。
よって、actives で off されているアドレスは消えているように見える。
3-2)
off を s=skip と書いていると on 扱いになってしまう。
3-3)
m=... つまりまとめ行が無効になる。
しかしながら、
歴史的に members で # address と書かれていると 4.0 では OK だが、
8.0 ではこのアドレスは見えない(認証する際の候補にならない)。
フォーマットを検査して warning を出すべきだろうか?
4) &fml4; の
aliases ファイル (/var/spool/ml/etc/fml/aliases)
から該当するMLの部分を消して .db を再生成する。
ケース 2. /var/spool/ml/ 全体を 4.0 から 8.0 へ移行する
ケース 1. を繰り返し適用すればいいでしょう。
移行作業中にML全体を止めていいなら、
&fml4; の
/var/spool/ml/etc/fml/aliases
を削除したうえで、ケース1を適用するのが楽なやり方でしょう。
もちろん、移行作業中は MTA を止めてください。
議論: 同一ドメインで、&fml4; と &fml8; を半々に使っている場合
(X-Sequence: fml-devel 389 より)
同一ドメインで、&fml4; と &fml8; を半々に使っている場合、
次のような設定をほどこしておくとよいでしょうか?
いや、
中途半端なトリックはやめて、
すなおに、mergeml で変換するか、しないかにしておいた方が無難だと思います。
&fml4; での設定(site_init.phとかconfig.ph)で
push(@ACTIVE_LIST,"$DIR/recipients") if( -f "$DIR/recipients" ) ;
一方、&fml8; での設定(site_default_config.cfやconfig.cf)で
html_archive_dir = $ml_home_dir/htdocs