IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    使用Gmail+Mutt+Msmtp+Offlineimap

    imtxc发表于 2012-04-22 11:18:00
    love 0

    在Linux下可以使用Thunderbird非常方便的收发邮件,但是我不喜欢一直开着一个GUI程序占用着任务栏或者一个桌面,因此我使用Mutt来管理我的邮箱,使用Msmtp发送邮件,使用Offlineimap同步Gmail和本地收件箱,这里记录一下配置的过程,其中参考了网络上很多资料以及配置, 在这里表示感谢.


    ##1.Offlineimap

    首先配置[Offlineimap][],关于offlineimap的一些信息,可以参考它的主页,这里使用offlineimap是因为它可以把我的gmail收件箱中的邮件同步到本地目录, 方便离线查看邮件. 首先当然是安装offlineimap:sudo apt-get install offlineimap,然后编辑它的配置文件:gedit ~/.offlineimaprc,可以参考我的例子:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
    ui = ttyui
    accounts = GMail
    
    [Account GMail]
    localrepository = Gmail-Local
    remoterepository = Gmail-Remote
    
    [Repository Gmail-Local]
    type = Maildir
    localfolders = ~/Mails/Gmail
    
    [Repository Gmail-Remote]
    type = Gmail
    keepalive = 30
    realdelete = yes
    holdconnectionopen = yes
    remoteuser = txc.yang@gmail.com
    remotepass = xxxxx
    remotepassfile = ~/.mutt/passwd
    
    #"[Gmail]/Some Folder" --> some_folder
    nametrans = lambda folder: re.sub('^inbox$', 'INBOX',
    						   re.sub(' +', '_',
    						   re.sub(r'.*/(.*)$', r'\1', folder).lower()))
    
    # vim: ft=cfg tw=0
    

    这里,我的邮箱目录是~/Mails/Gmail,可以根据自己的需要修改,在这里修改之后,也同样需要在后面提到的mutt的配置文件中修改相应的目录,配置完成后,可以在终端中使用offlineimap -o来下载邮件. 由于我的邮件不是很多,因此我设置每隔10分钟同步一次邮箱,我使用了这样一个同步邮件的脚本:

    1
    2
    3
    4
    5
    
    #!/bin/bash
    PID=$(pgrep offlineimap)
    [[ -n "$PID" ]] && kill $PID
    offlineimap -o -u quiet &>/dev/null &
    exit 0
    

    将上面这个脚本保存为syncmail.sh并赋予可执行权限,放到/usr/local/bin下面

    1
    2
    
    sudo chmod +x suncmail.sh
    sudo cp syncmail.sh /usr/local/bin/
    

    然后crontab -e,在后面添加这样一句:

    1
    
    */10 * * * * /usr/local/bin/syncmail.sh
    

    这样,每隔10分钟,系统会同步一次我的邮箱.

    2.Msmtp

    然后配置Msmtp 我用来发送邮件的软件是Msmtp,安装sudo apt-get install msmtp,然后同样是编辑配置文件:gedit ~/.msmtprc, 这里的配置比较简单,添加下面的内容就可以:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    defaults
    logfile /tmp/msmtp.log
    
    # gmail account
    account gmail
    auth on
    host smtp.gmail.com
    port 587
    user txc.yang
    password xxxxx
    from txc.yang@gmail.com
    tls on
    
    #tls_trust_file /etc/ssl/certs/ca-certificates.crt
    # set default account to use (from above)
    account default : gmail
    

    3.Mutt

    终于到了Mutt,依然进行

    1
    2
    
    sudo apt-get install mutt
    gedit ~/.muttrc
    

    添加如下内容:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    # options
    set mbox_type   = Maildir
    set folder      = ~/Mails/Gmail
    set spoolfile   = "+INBOX"
    set mbox        = "+archive"
    set postponed   = "+drafts"
    set editor="vim"
    set include=yes
    set indent_str="> "
    set from='Imtxc '
    set use_from=yes
    set envelope_from=yes
    set realname='Imtxc'
    set reverse_name=yes
    set reverse_realname=yes
    
    unset record
    
    set sendmail    = /usr/bin/msmtp
    
    # mailboxes
    mailboxes +INBOX +archive +sent +drafts +spam +trash
    

    这样,就配置完成了最基本的Mutt+ msmtp+ offlineimap配置,可以用来收发邮件,但是,我们可以对Mutt进行进一步的配置,比如配置使用w3m显示html邮件以及在邮件中显示图片等,具体的配置可以参考我放在github上的配置文件以及配色,键绑定等,都可以在我的配置文件中找到相关配置.

    参考资料:

    Mutt + Gmail + Offlineimap

    offlineimap



沪ICP备19023445号-2号
友情链接