Turn Raspberry Pi into an Email Archiver

Dmitri Popov

Productivity Sauce

Oct 29, 2012 GMT
Dmitri Popov

Having your email up in the cloud is very convenient, until your Internet connection is down or email provider is having technical issues. In situations like these, having a searchable backup of all your emails which you can access locally can be a real life-saver. Fortunately, setting up an email archiving solution isn't all that difficult, and you can use a Raspberry Pi (or any spare machine for that matter) for that. If your email service provides IMAP support, then the best tool for the job is OfflineIMAP. This software is available in the Debian official software repository, so you can install it on RPi (assuming it runs the Raspbian distro) using the sudo apt-get install offlineimap command. Once you've done that, create a text file and specify OfflineIMAP's settings. The following minimal configuration should be enough to fetch emails from a remote IMAP server (replace placeholders in square brackets with actual values):

[general]
accounts = [NAME]
ui = Noninteractive.Basic
[Account FastMail]
localrepository = Local
remoterepository = Remote
[Repository Local]
type = Maildir
localfolders = [PATH TO MAIL DIR]
[Repository Remote]
type = IMAP
ssl = yes
remotehost = [IMAPSERVER]
remoteuser = [EMAIL]
remotepass = [PASSWORD]

Create then a simple cron job to schedule regular email backup:

crontab -e
@hourly offlineimap

Obviously, the backup archive is not much use if you can't search and read it, and you have several options to access archived emails. You can install the mutt mailer and use it to browse and search emails. If you plan to use mutt only for that purpose you don't have to configure it: simply use the -f argument to point mutt to the desired folder:

mutt -f ~/Mail/INBOX

You can then use the / (find) or l (limit) commands in the index view to quickly find messages. Alternatively, you can use the mu tool which is designed specifically for searching through a large body of messages. mu is available on Debian under the maildir-utils name, so to install it, use the sudo apt-get install maildir-utils command. Use then mu's cheat sheet to master the tool's basic functionality.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News