Debianにおけるmailman2.1 -> 3への移行

mailman2はpython2で書かれており、Debian bullseye(11)ではもうmailman3しかパッケージがありません。かつ、パッケージ側でデータまわりのハンドリングは特になされないので、手動で移行作業を行う必要があります。意外とはまりどころが多かったので記録しておきます。 公式のドキュメント https://docs.mailman3.org/en/latest/migration.html mailman3のインストール mailman3上でのML作成 MLの一時停止 (一時的に新規メールを受け付けないため) 自分の場合postfixだったのでmain.cfからmailmanの設定を削除した。 import21の実行 (subscriber等設定のコピー) 場合によってはimport21が失敗する。自分の場合はその原因が bounce_infoが空でなかったのが原因(参考: https://lists.mailman3.org/archives/list/mailman-users@mailman3.org/thread/JEPMB3HW4FI57EUMOST4L7BD2ILIIS3P/)だったので、手動で削除した。 アーカイブの移行 (pipermail -> hyperkitty) web設定の修正 (apacheの場合) hyperkittyの設定変更 (API key設定) Django管理UIからドメイン名の修正 (デフォルトはexample.com) http://${site}/mailman3/admin/ にアクセス サイト (http://${site}/mailman3/admin/sites/site/) の「変更」を選択 example.com があるのでそれを自サイトに変更 mailman3の有効化 (postfix) ACCOUNT_DEFAULT_HTTP_PROTOCOLの設定 (optional) Debianのmailman3-webはデフォルトでweb UIはhttpsを想定しているので、httpしかない場合 /etc/mailman3/mailman-web.py の ACCOUNT_DEFAULT_HTTP_PROTOCOL を http にする。 UI/アーカイブの確認 http://${site}/mailman3/ にアクセスする。debconfで入力した管理者情報を入れてログインしようとすると、一度確認メールが送られるので注意。 検索インデックスの更新 漏れなどがあればご指摘ください。 2021-10-14: ACCOUNT_DEFAULT_HTTP_PROTOCOLと検索インデックスについて追記。