2014年04月23日

Becky!からSylpheedへのメールボックス形式の変更

Windows XPからDebian wheezyに移行した際に、メールクライアントをBecky!とSylpheedの併用から、Sylpheed単独へ移行した際のメモです。

利用しているプロバイダ(ぷらら)のメールアドレスではIMAPが提供されており、メインを除いてIMAPに移行しました。メールクライアントでIMAPサーバーに接続して、POPしたメールをサーバー側へコピーしました。コピーにはそれなりに時間がかかりますので、あらかじめ不要なメールはフォルダごと削除して減らしておきました。

メインのアドレスだけは既存のメール数やフォルダ数が多いため、POPのまま利用することにしました。この際、Becky!のメールをSylpheedのメールボックス形式(MH)に変換する必要があります。

以下のような流れで作業しました。
1. Becky!からmbox形式でエクスポートする
 (直接MH形式にエクスポートできないため)
2. エクスポートしたmbox形式のファイルをLinuxにコピーする
3. mewに付属しているincmコマンドでMH形式にする
 (Sylpheedで1つずつインポートするには数が多いため)
4. Sylpheedでメールボックスの設定場所を指定する

細かい手順は以下です。

1. Becky!のインストールされているWindowsにCircleBeckyプラグインをインストールする
 (Beckyのエクスポート機能ではフォルダ単位でしかできず、
 このプラグインで全部を再帰的にエクスポートするため)

2. Becky!を起動し、メニューから [ツール] - [プラグインの設定] - [CircleBecky Plug-In] を選択して、エクスポート形式のところでmbox形式を選択する
 (返信アドレスの調整についても念のためはずしておく)

3. Becky!のメニューから[ファイル] - [フォルダ] - [拡張エクスポート] を選択して、保存するフォルダを選択する
 これでmbox形式でメールボックス全体がエクスポートできました。
パーミッションで少しハマりました
現象:手順2でmbox形式に設定しても反映されなかった。
原因:Admin権限でCircleBeckyをbeckyのプラグインフォルダへインストールしたが、そこは一般ユーザ権限では書き込みできないため。
対応:一般ユーザに書き込み権限を付与した

4. エクスポートしたmbox形式のファイルをWindowsからLinux(Debian)にコピーする

5. Debianで、mewに付属しているincmをインストールする
https://packages.debian.org/wheezy/mew-bin
$ sudo aptitude update
$ sudo aptitude install mew

6. incmコマンドを使った以下のシェルスクリプトを実行する
$ cp -r 受信箱/ ~/work/
$ cd ~/work/
$ ./cv.sh 受信箱/ hoge/
送信箱も同様に作業した。
以下はcv.shの中身(ここのシェルスクリプトを利用させていただき、一部修正しました)
#!/bin/sh

mboxDir="$1" mhDir="$2"

if [ -d "$mhDir" ]; then
mv "$mhDir" "$mhDir"-back
fi
logFile="$PWD/log.txt"
if [ -f "$logFile" ]; then
rm -f "$logFile"
fi
touch "$logFile"
mailList="./mailLIst.txt"
if [ -f "$mailList" ]; then
rm -f "$mailList"
fi
find ./"$mboxDir" -type f > "$mailList"
dirList="./dirList.txt"
if [ -f "$dirList" ]; then
rm -f "$dirList"
fi
#sed s/.mbox//g "$mailList" > "$dirList"
sed s/'\/[^/]*.mbox$'//g "$mailList" > "$dirList"
for i in `cat "$mailList"`;
do
echo "$i" >> "$logFile"
exportDir="$mhDir"/"`echo $i | sed s/'\/[^/]*.mbox$'//g`"
if [ ! -d "$exportDir" ]; then
echo "create directory: $exportDir" >> "$logFile"
mkdir -p "$exportDir"
fi
# echo "$exportDir"
# echo "$i"
incm -b -d "$i" -i "$exportDir" | tail -n 10 >> "$logFile"
ls "$exportDir" | wc -l >> "$logFile"
echo >> "$logFile"
done

7. MH形式のファイルをメールボックスを置きたい場所へ移動
$ cp ~/work/hoge/受信箱/* ~/Mail/inbox

8. Sylpheedを起動して、メールボックスの場所を指定する
 メニューから[ファイル]-[メールボックス]-[メールボックスを追加する]を選択し、場所で「/home/ユーザー名/Mail」を選択する(~/Mail/以下に置いたため)

参考にしたページ
* 「BeckyのメールデータをWanderlustへ移行させる」
* Japanese workaholic!! 「ThunderbirdからWalnderlustに移行する その1」
* yzero.org 「becky から thunderbird」
* Sylpheedマニュアル 「他メールソフトからSylpheedへの移行」
ラベル:Sylpheed
posted by 端っこなひと at 21:51| Comment(0) | TrackBack(0) | アプリケーションソフト | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]


この記事へのトラックバック