linux – 如何在Crontab中正确运行OfflineIMAP

安装Fedora.
# cat /etc/redhat_release | awk ' { print F "> " $0; print ""; }'
Fedora release 14 (Laughlin)

从yum安装offlineimap,因为这些天我很懒.

# yum info offlineimap | awk ' { print F "> " $0; print ""; }'
Loaded plugins: langpacks,presto,refresh-packagekit
Adding en_US to language list
Installed Packages

Name        : offlineimap
Arch        : noarch
Version     : 6.2.0
Release     : 2.fc14
Size        : 611 k
Repo        : installed
From repo   : fedora
Summary     : Powerful IMAP/Maildir synchronization and reader support
URL         : http://software.complete.org/offlineimap/
License     : GPLv2+
Description : OfflineIMAP is a tool to simplify your e-mail reading. With
            : OfflineIMAP,you can read the same mailBox from multiple
            : computers.  You get a current copy of your messages on each
            : computer,and changes you make one place will be visible on all
            : other systems. For instance,you can delete a message on your home
            : computer,and it will appear deleted on your work computer as
            : well. OfflineIMAP is also useful if you want to use a mail reader
            : that does not have IMAP support,has poor IMAP support,or does
            : not provide disconnected operation.

而且,瞧,每次我运行offlineimap并尝试在crontab中重定向输出时,它都不起作用.下面是我的.offlineimaprc.

[general]
ui = TTY.TTYUI
accounts = Personal,Work
maxsyncaccounts = 3

[Account Personal]
localrepository = Local.Personal
remoterepository = Remote.Personal

[Account Work]
localrepository = Local.Work
remoterepository = Remote.Work

[Repository Local.Personal]
type = Maildir
localfolders = ~/mail/gmail

[Repository Local.Work]
type = Maildir
localfolders = ~/mail/companymail

[Repository Remote.Personal]
type = IMAP
remotehost = imap.gmail.com
remoteuser = username@gmail.com
remotepass = password
ssl = yes
maxconnections = 4 

# Otherwise "deleting" a message will just remove any labels and 
# retain the message in the All Mail folder.
realdelete = no

[Repository Remote.Work]
type = IMAP
remotehost = server.company.tld
remoteuser = username
remotepass = password
ssl = yes
maxconnections = 4

我尝试过不同变化的TTY.TTYUI,NonInteractive.Quiet和NonInteractive.Basic.无论有没有重定向,我尝试的crontab条目都会导致问题.

$crontab -l | awk ' { print F "> " $0; print ""; }'
*/5 * * * * offlineimap >> ~/mail/logs/offlineimap.log 2>&1
*/5 * * * * offlineimap

我总是得到同样该死的错误错误:没有找到可用的UI!我究竟做错了什么!?

解决方法

使用-u开关指定正确的UI
offlineimap -u Noninteractive.Quiet # right
offlineimap -u NonInteractive.Quiet # WRONG!

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...