2012年6月25日月曜日
gmailのバックアップ
windows7でgmailをバックアップしたい。
が、Thunderbirdなどのメーラを使って手動で同期するなど、手間のかかる
方法は一切使いたくない方のために。
1)
gmailの設定でPOPにアクセスできるようにする。
2)
cygwinをインストールする。
インストールの際に、Mailの項目のfetchmailとprocmailにも
チェックしておく。
3)
ログインユーザ名がnkdの場合、
C:\cygwin\home\nkd\
というディレクトリができている。
ここにメール関係の設定ファイルを置く。
まず、fetchmailの設定。
fetchmailはgmailからメールを取り出す処理を行う。
.fetchmailrcというファイルを作成し、以下のように記述する。
----
poll pop.gmail.com
protocol pop3
username "user@gmail.com" password "mypass"
keep ssl
mda "/usr/bin/procmail -m /home/nkd/.procmailrc"
----
※user@gmail.comはgmailのメールアドレス。
※mypassはgmailのログインパスワード。
※nkdの部分は自分のログインユーザ名とする。
次に、procmailの設定。
procmailは取り出したメールを振り分けて保存する処理を
行う。fetchmailだけだと1つのファイルにメールが書き込まれて
いくので、使い勝手が悪いのでメールごとに1つのファイルに
書き込むようにする。
.prcomailrcというファイルを作成し、以下のように記述する。
----
MAILDIR=/home/nkd/
VERBOSE=on
:0
Mail/
----
※nkdの部分は自分のログインユーザ名とする。
4)
動作の確認。
cygwinのアイコンにアクセスし、
fetchmai -vk
と入力してみる。いろいろとログが出力されるので、ログを確認し
メールを取り込めているか確認する。
なお、ちゃんと取り込めている場合、
C:\cygwin\home\nkd\Mail\new
以下にメールごとのファイルが作成されている。
5)
最後に、windowsのタスクスケジューラを使って定期的にgmailに
アクセスするようにする。
ただし、
fetchmai -vk
を実行するだけのバッチファイルを登録すると、処理ごとに
ウィンドウが表示されるので煩わしいので、VBSファイルを利用して
ウィンドウを非表示とする。
作成するのは、gmailbak.batとgmailbak.vbsの2つのファイル。
ともにC:\cygwin\home\nkd\以下に作成する。
gmailbak.batの内容は以下のとおり。
----
c:/cygwin/bin/bash.exe --login -i -c "fetchmail -k;
----
gmailbak.vbsの内容は以下のとおり。
----
Set objWSHShell = CreateObject("WScript.Shell")
objWSHShell.Run "cmd.exe /c C:\cygwin\home\nkd\gmailbak.bat", 7
----
※nkdの部分は自分のログインユーザ名とする。
タスクスケジューラには、定期的にgmailbak.vbsを実行するように
設定すれば完了。
登録:
投稿 (Atom)