« つくばで初めてしゃぶしゃぶを食べた | メイン | 休日は休日なのです »

2007年02月17日

Gmail の再設定 〜 POP で移行

Gmail を使い始めて2週間になりますが、これまでのメールを削除して、再移行を行いました。その顛末をば。

オリジナルの日時が反映されずに、受信日時が反映されます。この辺は、割り切る必要がありますね…。

日付が反映されないということは、メールを検索しても正しい順序で出ないことを意味します。バックアップと割り切れればいいけど、高速に検索できるのを最大限生かしたい場合は、そうそう割り切れるものではありません。

調べてみると POP で転送すると、日付がオリジナルになるらしいですよ。日本語版では実装されていないのだけど、英語版にすると使える場合があるらしい…。

Gmail 表示言語 設定

「設定」→「全般」を開いて「Gmail 表示言語」を「English (US)」に設定してみましょう。あなたの Gmail が英語版に変わります。

Get mail from other accounts

「Settings」→「Accounts」を開いてみてください。

Get mail from other accounts:

の項目がある方は、非常に幸運です!このまま読み続けて、ぜひメールの移行をしてみてください。なかった方は、しばらく待てば出てくるかもしれません(僕は1週間ほど待ちました)。

この機能を使うと、他のメールサーバにあるメールを Gmail で読むことが出来ます。最近の多くのウェブメールサービスで実装されている機能です。この機能の良いところは、メールヘッダの Date を解釈し、その日時が受信日時になるのです。

この機能の設定から、ローカルにあるメールの転送までを解説していきます。自宅サーバなど、メールのアカウントなどを自由に設定できることが前提になります。

Add a mail account

「Add another mail account」をクリックすると、こんなページが立ち上がります。他で使っているメールアドレスを入力しましょう。「送信済みメール」の振り分け判定にも使われるようです。

mail settings

被受信 POP サーバの情報を入力していきます。今回は、既に他サーバから Gmail に転送を開始しているので、新しいメールか POP で送られたメール(古いメール)かを区別するために、受信トレイをスキップする Skip the Inbox を有効にしました。Gmail を他に転送している場合は、必ず有効にしましょう。かなりうっとうしい事になります(転送は in:inbox のみにしないとやばい)。

あ。通常使っている POP アカウントと区別しないと、メールがごちゃ混ぜになってしまいます。今回専用にアカウントを準備して、それを設定しましょう。

Gmail 側の設定は、これで終わり。

ローカルの Outlook Express のメールを POP 経由で Gmail に送信する方法です。

Outlook Express のメールを mbox に変換して、サーバの spool に直接置くのが楽で良いです。前回は、メールの変換に Thunderbird を利用しましたが、もっと簡単に使えるツールを見つけました。

OutlookExpress-To - OE5/6 Multi Converter というツールを使います。形式を UNIX mbox にして、変換先のフォルダを指定して「変換開始」をクリックしてください。

mbox のファイルが出来上がりました。サーバに転送しましょう(~user/mail というディレクトリを作成してその下にでも)。転送するときは、改行コードに気をつける必要があります。多くの FTP, SFTP, SCP クライアントに「テキスト転送モード」があるので、それを利用しましょう。

コピーダイアログ 詳細

WinSCP の場合は、コピーダイアログで「詳細」をクリックして設定することが出来ます(転送しようとしたときに出るダイアログ)。テキストモードで転送できない場合は、サーバ側で \n を \r\n に置換してあげて下さい。

spool へのコピーは簡単。

$ cat ~user/mail/* > /var/spool/mail/user

user を今回の POP 用に準備したユーザとして、作成した mbox を spool にコピーしています。ワイルドカードを使って cat で開くと、マッチするファイルが連結された状態でオープンされるので、実質1つの mbox となってオープンされます。

これで終わり。後は、ゆっくりと Gmail に取り込まれるのを待つだけです。ただ、こちらにも転送の制限があって、1時間に200通ほどしか転送されません。他から転送されるメールと別計算のようなので、既に転送を開始しているメールが遅延することはないようです。

【関連記事】
Gmail を使い始めました 〜 メールを転送 (2007年02月07日)
Gmail を使い始めました 〜 Gmail の設定 (2007年02月07日)
Gmail を使い始めました 〜 メールの移行 (2007年02月07日)

【関連情報】
・GmailのMail Fetcher(POP取り込み機能)を使ってみました
 http://plaza.rakuten.co.jp/sdsyy2f6q4aty4xj/diary/200701190001
・OutlookExpress-To - OE5/6 Multi Converter
 http://www.vector.co.jp/soft/win95/net/se229601.html
・Win版 OE からのメール移行
 http://allabout.co.jp/computer/macos/closeup/CU20031020conv/index.htm

2007年02月17日 17:46 | Technology

トラックバック

コメント

過去のメールをgmailに移行する方法を探してたけど,さすがceek君だね.ありがたやぁ〜
僕は英語版に変えたらすぐに
Get mail from other accounts:
が出てきました.
現在じゃんじゃん移行中です.

投稿者 うつみ : 2007年02月18日 00:07

>> うつみ くん
お役に立てて嬉しいです :)
mbox に変換して spool に置くあたりがポイントですね :p

投稿者 ceekz : 2007年02月18日 19:40

ちなみにichoでもできるよ.
ホームディレクトリに mbox ファイルを置いて
> mb2md -s mbox
とやれば出来た.

投稿者 うつみ : 2007年02月21日 20:41

>> うつみ くん
icho は Maildir で管理されてるんですね。
mb2md というコマンドも初めて知りました。便利そうですね。

投稿者 ceekz : 2007年02月22日 22:24