将所有MS Outlook PST文件转换为Maildir格式
将办公室从Microsoft Windows转换为Linux时可能遇到的一个挑战是许多人将他们的电子邮件存档在PST文件中 。 有PST工具可用,但大部分都是商业用途,因为PST文件格式已被Microsoft关闭并受到保护。 有几种非商业性方法来实现大致相同的目标,在本教程中,我们使用IMAP(更具体地说, courier-imap )将我们的所有电子邮件从PST转换为Maildir格式 。 这种方法的优点在于,您还为新的邮件系统打下基础,所有旧的电子邮件在您切换的当天已经导入。
在你开始之前...
本教程基于以下几个假设:
- 您正在使用MS Outlook,并且您知道如何存档PST文件中的电子邮件(更多信息可以在这里... )
- 您正在使用基于GNU / Debian的操作系统(包括Ubuntu,这是本教程中使用的操作系统)
- 您熟悉Debian软件包管理
- 您熟悉命令行和编辑器等工具(vim,emacs等)
本教程的基本步骤如下:
- 安装和配置Express
- 将MS Outlook连接到新的IMAP服务器
- 将邮件从PST文件移动到IMAP文件夹
- 配置您的新邮件Linux邮件客户端(KMail)以访问您的IMAP文件夹
第1步 - 安装和配置Express
首先你需要安装courier-imap:
$ sudo apt-get install courier-imap
可以根据依赖关系安装几个其他软件包。 如果需要文档包,也可以安装courier-doc包。
在安装包过程中,您会得到以下提示:
在本教程中,我们不使用Web界面,因此可以在此处选择“否”。
现在,您需要选择一个邮件将要存在的目录:
$ sudo mkdir -p /opt/imap-mail
现在我们需要在Express用户数据库中定义我们的用户。 有几种方法可以执行此操作,其中包括使用pw2userdb
工具对/ etc / passwd
中的所有用户进行批量转换,如Express员FAQ中所述。 以下是我们如何创建单个用户:
$ sudo touch /etc/courier/userdb
$ sudo chmod 600 /etc/courier/userdb
$ sudo userdb peanut set uid=1000 gid=1000 shell=/bin/bash home=/opt/imap-mail/peanut
在此文件中,您将具有以下内容:
peanut uid=1000|shell=/bin/bash|home=/opt/imap-mail/peanut|gid=1000
现在您需要设置用户密码并创建将存储我们所有电子邮件的目录:
$ sudo userdbpw -md5 | sudo userdb peanut set systempw
$ sudo mkdir -p /opt/imap-mail/peanut
$ sudo maildirmake /opt/imap-mail/peanut/Maildir
$ sudo chown -R 1000:1000 /opt/imap-mail/peanut
您的/ etc / courier / userdb
文件现在应如下所示:
peanut systempw=$1$JdvxSL9/$2TOrNidtALpODg1HZR4Aj1|uid=1000|shell=/bin/bash|home=/opt/imap-mail/peanut|gid=1000
注意:密码字段可能看起来不同。
在/ etc / courier / authdaemonrc
文件中,确保设置以下值:
authmodulelist="authuserdb"
请注意,您可能需要替换现有的authmodulelist
值。 现在准备用户数据库并重新启动整个系统:
$ sudo makeuserdb
$ sudo /etc/init.d/courier-authdaemon stop
$ sudo /etc/init.d/courier-imap stop
$ sudo /etc/init.d/courier-authdaemon start
$ sudo /etc/init.d/courier-imap start
IMAP系统现已准备就绪。 接下来,我们需要将MS Outlook连接到我们的新IMAP系统。
将MS Outlook连接到IMAP服务器
以下过程相对容易使用MS Outlook客户端。
确保MS Outlook正在运行,然后单击“工具”菜单选项并选择“电子邮件帐户”:
确保选择以下选项:“添加新的电子邮件帐户”
在下一个屏幕上,选择IMAP选项:
确保在下一个屏幕上完成相关详细信息:
完成后,您可以访问您的新邮箱。 应该是空的