専攻メールサーバの IMAP サーバ入れ換えに伴い, IMAP ユーザーのメール保存形式が maildir 形式から mailbox 形式に変更となる. IMAP ユーザーで,なおかつ, ~/.qmail ファイルに ./Mailbox の 記述のない方は以下で述べる作業を行い, メールの保存形式を変換する必要がある.
以下では qmail 付属の "maildir2mbox" コマンドを用いてメール保存形式を変換する方法について述べる.
ホームディレクトリのsticky bitをセットする.
$ chmod +t $HOME |
自分宛にメールを出してメールが届かないことを確認.
まず不測の事態に備え, 自分が作成したMaildir ディレクトリを含め, 全てのMaildirディレクトリ のバックアップを必ずとっておく.
$ cp -rp /home/username/自分のMaildirディレクトリ名 /home/username/自分のMaildirディレクトリ名.bk
バックアップをとったら ls コマンドで確認する.
$ ls ~/ -l |
"maildir2mbox" コマンドは maildir 形式で保存されたメールを mbox 形式に変換するための qmail 付属のツールである.
- 方法
まず以下の3つの環境変数を設定する.
$ /var/qmail/bin/maildir2mbox
と実行すると, カレントディレクトリにある Maildir ディレクトリの中にあるメールが 全て Mailbox という 1 つのファイルの中に移動される.
注意すべきことはこの作業ではその他のディレクトリに対して変換をかける場合は, 逐次環境変数を変更して 1 つずつ変換を行う.
------- maildir2mbox 使用例 ---------------------------hogehoge さんがディレクトリ gfc を作成してメール整理を行っている場合
ログインシェルが /bin/bash の場合ログインシェルが /bin/csh の場合
$ export MAILDIR=/home/hogehoge/gfc/ $ export MAIL=/home/hogehoge/gfcmbox $ env (以下2行の記述があることを確認)
MAILDIR=/home/hogehoge/gfc/ MAIL=/home/hogehoge/gfcmbox$ /var/qmail/bin/maildir2mbox
% setenv MAILDIR /home/hogehoge/gfc/ % setenv MAIL /home/hogehoge/gfcmbox % env (以下2行の記述があることを確認)
MAILDIR=/home/hogehoge/gfc/ MAIL=/home/hogehoge/gfcmbox% /var/qmail/bin/maildir2mbox
これで Maildir 形式のディレクトリ "gfc" の中のメールが, Mailbox 形式のファイル "gfcmbox" の中に格納される.
---------------------------ここでの作業を実行すると, サーバー入れ換え後, メーラーにおける 振り分け先のメールボックスが, 例えば "gfcmbox" となり, メール ボックスの名前が今までと違ってしまう. これをいやがる方もいる だろうが, unix ではファイル名とディレクトリ名が同じ名前のものは 同じ階層での共存ができない. これはシステム上の問題と理解してほしい.
最後に,変更していた環境変数を元に戻す.
---------------------------
ログインシェルが /bin/bash の場合
ログインシェルが /bin/csh の場合
$ export MAILDIR=/home/hogehoge/Maildir/ $ export MAIL=/home/hogehoge/Mailbox $ env (以下2行の記述があることを確認)
MAILDIR=/home/hogehoge/Maildir/ MAIL=/home/hogehoge/Mailbox
---------------------------
% setenv MAILDIR /home/hogehoge/Maildir/ % setenv MAIL /home/hogehoge/Mailbox % env (以下2行の記述があることを確認)
MAILDIR=/home/hogehoge/Maildir/ MAIL=/home/hogehoge/Mailbox
メールが /home/username/Mailbox にも配送されるように, .qmail ファ イルに追加書き込みする.
$ echo ./Mailbox >> ~/.qmail
追加した後に
$ cat ~/.qmail ./Maildir/ ./Mailbox |
となっていることを確認する.
Mailbox形式とMaildir形式は,同時に使用することはできない. よってサーバー入れ換えまではMaildir形式を使う必要がある. ここでバックアップを元の名前でコピーし,サーバー入れ換え時 まではMaildir形式を使えるようにしておく必要がある.
まず,空になっているMaildir ディレクトリを削除, それから
バックアップしておいたMaildirディレクトリをコピーする,
という順番で行います.
※ファイルの誤削除は復旧できません!タイプミスに細心の注意を払って
行って下さい.
$ rm -r /home/username/自分のMaildirディレクトリ名/ $ cp -rp /home/username/自分のMaildirディレクトリ名.bk /home/username/自分のMaildirディレクトリ名/
その他の,Maildir形式のディレクトリにおいてもこの作業を行っておくこと.
元に戻したら ls コマンドで確認する.
$ ls ~/ -l |
$ chmod -t $HOME |
自分宛にメールを出してメールが届くことを確認.
さらにある程度の時間が立つと,「1. メール配送の一時停止」の 際に,自分宛に送信したメールも配送されてくる.
最終更新日: 2002/10/22 島沢竜平 (sryu@ep.sci.hokudai.ac.jp) | Copyright © 2002- EPnetFan. All rights reserved. |