田舎者Yの日記

定年退職して農業に従事している者のブログ

(海外からスパムコメントが続きましたので、しばらくコメントは承認制にします。)

LinuxでGmailをバックアップ

 Gmail を使い始めて3年以上になる。便利さにかまけてホイホイとメールを保存していたのだが、バックアップをとってなかった。他のサイトを参考にLinuxでバックアップをとることに成功したので、まとめてみる。

 なお、Microsoft Windows の場合はいくつかフリーのツールがある。下記のサイトはこの記事を書いている時点で Google 検索のトップにくる。『Gmail Backup』というのは Windows では定評があるようだ。

GmailをローカルPCにバックアップできる『Gmail Backup』を試してみた - IDEA*IDEA


 さて本題の Linux であるが、私は現在、Ubuntu 9.04 を使っている。他のディストリビューションでも同様のことはできると思う。基本はgetmailというコマンドを使うということだ。
 以下の Matt Cutts という方の記事を参考にした。

How to back up your Gmail on Linux in four easy steps

 また、getmail でデータをダウンロードする際、データ形式を Mbox と Maildir の二種類選べる。ここでは前者の設定方法を書く。

getmail をインストールする

 UbuntuDebian であれば ”sudo aptitude install getmail4” でインストールできる。他のディストリビューションの場合は、以下のサイトから必要なファイルをダウンロードして展開しインストールできるだろう。

http://pyropus.ca/software/getmail/#download

必要なディレクトリやファイルを用意する

 通常のプログラム・パッケージであれば、apt-get や aptitude でインストールすると設定ファイルや設定ディレクトリが自動的に生成されることが多いのだが、getmail はユーザが作る必要があるようだ。私は上記の Matt さんの指示どおりに作ってみた。

 自分が使うユーザのホーム・ディレクトリに設定ファイルを置くディレクトリの .getmail を作り、ダウンロードしたデータを置くディレクトリ gmail-archive を使った。前者は"."で始まる不可視ディレクトリである。

mkdir ~/.getmail
mkdir ~/gmail-archive


 そして .getmail に設定ファイルである getmail.gmail を作る。私は "gedit ~/.getmail/getmail.gmail" として Gnome エディタを使って以下のような内容のファイルを作った。(後述するが、私はIMAPを利用している)

[retriever]
type = SimpleIMAPSSLRetriever
server = imap.gmail.com
username = *****@gmail.com
password = *****
# *****の部分は適宜変更してください。

[destination]
type = Mboxrd
path = ~/gmail-archive/gmail-backup.mbox

[options]
# print messages about each action (verbose = 2)
# Other options:
# 0 prints only warnings and errors
# 1 prints messages about retrieving and deleting messages only
verbose = 2
message_log = ~/.getmail/gmail.log


 なお、私は ThunderbirdGmailIMAP 接続している。POP3でバックアップをとる場合は、上記の設定の最初の方を以下のように変えると良いだろう。Gmail で POP 接続の設定をするときは、メールを Gmail の受信箱に残す設定をしておけばバックアップをとった後でも以前と同様に使える。(自分はやってないが、そうしないと受信箱やメールのアーカイブが全部カラッポになってしまうだろう。ここは注意が必要だ。)

[retriever]
type = SimplePOP3SSLRetriever
server = pop.gmail.com


 バックアップをとる前にデータファイルが存在しないとエラーが生じるようだ。以下のように空のファイルを事前に作っておく

touch ~/gmail-archive/gmail-backup.mbox

getmail を実行する

 以下のように実行する。

getmail -r /home/username/.getmail/getmail.gmail

 うまくいけば以下のようなメッセージが表示され、ダウンロードが始まる。

getmail version 4.8.4
Copyright (C) 1998-2008 Charles Cazabon. Licensed under the GNU GPL version 2.
SimpleIMAPSSLRetriever:*****@gmail.com@imap.gmail.com:993:


 Matt さんの記事には、この他にも、自動的に(定期的に)このコマンドを実行する方法や、ファイルサイズが大きい場合、受信した日付で分けてダウンロードする方法などが解説してるので、知りたい方は参考にされるとよいだろう。Matt さんの記事を再掲する。

How to back up your Gmail on Linux in four easy steps

バックアップデータの確認

 私は Ubuntu ユーザなのだが、Thuderbird をデフォルトのメールクライアントとしている。どうも getmail でダウンロードした mboxrd のファイルはそのままでは Thunderbird で読めないようだ。私は Evolution でファイルをインポートして確認した。

 Windows でも Thunderbird を使っていたので、Ubuntu でもそうしたのだが、どうやら Evolution というソフトも使い勝手が良さそうだ。(Outlook クローンか?)たまに使ってみようかなとも思った。