2010/11/18(Thu)さくらのメールボックスでMLのメッセージ通し番号を任意に設定する方法

2010/11/18 1:19 NetService::Sakura
ある目的用にさくらインターネットが提供するさくらのレンタルサーバを使っていたのですが、とある事情でメール機能だけ残してレンタルサーバ機能はいらなくなったので、さくらのメールボックスというサービスに移行することにしました。

その時のfml設定に関する小技としてメモ。

プラン変更で設定が失われる

大分類のプランが違う場合には、収容サーバが異なる関係で設定を引き継げない*1ということだったので、メールボックスからMLの設定まで全部やり直しになりました。
メールボックスは基本的にPOP運用だったので特に問題無かったのですが、MLの方は、件名に付く通し番号をなるべく続けたものにしたいという要望がありました。

さくらのレンタルサーバだと、SSHでログインして$HOME/fml/spool/ml/<ML名>/seqというファイルを弄れば良かったのですが、メールボックスのみの場合はそうもいきませんし、サーバのコントロールパネルからも変更する場所がありません。


というわけで、fmlのML管理者メールアドレスを使ってこのseqの値を書き換えます。
ずばりこの目的のために作られているわけではないと思うのですが、ML管理用アドレスに管理者パスワードを書いてコマンドを投げると、ファイルの中身をメールで取り出したり書き込んだりできます。

*1 : レンタルサーバプランの中で、ライトとかスタンダードを切り換えるという場合は該当しないでしょう

管理者メールアドレスからの作業

管理者パスワードの設定/確認

会員メニューからログインします。
会員IDとパスワードは契約時のメールアドレスに送られているはず。

上部の"契約情報"から"契約サービスの確認"→サーバ設定というボタンを押すと管理パネルが開きます。

sakura-fml.png


"メーリングリストの設定"→該当MLの"設定"ボタン→"管理者メールアドレスとパスワードを設定する"を開き、自分のアカウントにパスワードを設定します。

メール送信

説明のために用いるアカウントを"xxxxxx"、ML名を"sample"とすると、管理用アドレスは"sample-ctl@xxxxxx.sakura.ne.jp"になります。
そして、移行前に100件のポストがされていた([sample:00100]という投稿まであった)とします。


先ほど管理者メールアドレスとして登録したアドレスから、管理者パスワードを埋め込んだ以下のようなメールを管理用アドレスに投げます。
この時、テスト用に使う番号を見越して、設定値より-1した値にしておくと良いでしょう。
admin pass <管理者パスワード>
admin put seq
99
で、送信するとすぐにfmlから返事が来ます。

>>> admin pass ********
認証されました。

O.K.!

>>> admin put seq
admin put /home/xxxxxx/fml/spool/ml/sample/seq -> /home/xxxxxx/fml/spool/ml/sample/seq.bak
admin put >> $DIR/seq

--sample@xxxxxx.sakura.ne.jp, Be Seeing You!    

************************************************************

       Help: <mailto:sample-ctl@xxxxxx.sakura.ne.jp?body=help>
Unsubscribe: <mailto:sample-ctl@xxxxxx.sakura.ne.jp?body=unsubscribe>

If you have any questions or problems,
   please contact sample-admin@xxxxxx.sakura.ne.jp
       or 
   send e-mail with the body "help"(without quotes) to
      sample-ctl@xxxxxx.sakura.ne.jp
      (here is the automatic reply, so more preferable)

e.g. on a Unix Machine
(shell prompt)% echo "help" |Mail sample-ctl@xxxxxx.sakura.ne.jp

************************************************************

で、この状態でseqには99と書き込まれているので、1通テストメールを送ってみます。
この時には、本来の配信者を登録せず、自分だけがMLの受信者という状況でやった方が良いと思います。

すると、[sample:00100]という件名が付いたメールが飛んでくるはずなので、これを確認したら配信者を登録して完成。
なんか変なことになったら、コントロールパネルから一旦MLごと削除して、作り直すといいですね。