Offlineimap succeeds at prompt but fails via cron job

Joseph LP ootput at
Tue Nov 24 03:11:15 GMT 2009

Paul Hinze <paul.t.hinze <at>> writes:

> Joseph LP <ootput <at>> on 2009-11-20 at 06:55:
> > I've an issue with Offlineimap 6.2.0 on Debian Squeeze whereby the command
> > perfectly fine when launched manually at command line, but fails when run on
> > cron schedule.
> The error you included unfortunately doesn't make it immediately obvious where
> the problem is coming from, so it could be either dovecot or offlineimap that
> is choking there.
> More often than not, however, things that work in a normal environment but
> break in cron have to do with issues with the shell environment.
> For debugging this I usually see if the command in question works via
> `env -i $COMMAND` (start with an empty environment and run $COMMAND) and thenI
> start to look at the output of `env` run as my user and try and determine what
> environment variables might be getting relied upon.

Hi Paul, your env suggestions allowed me to see more descriptive errors.

With $ env -i offlineimap:

Thread 'Account sync ***' terminated with exception:
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.5/offlineimap/", line 149, in
  File "/usr/lib/python2.5/", line 446, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/pymodules/python2.5/offlineimap/", line 174, in
    self.remoterepos =
    self, 'remote')
  File "/usr/lib/pymodules/python2.5/offlineimap/repository/", line 37,
  in LoadRepository
    return typemap[repostype](name, account)
  File "/usr/lib/pymodules/python2.5/offlineimap/repository/", line 30,
  in __init__
    self.imapserver = imapserver.ConfigedIMAPServer(self)
  File "/usr/lib/pymodules/python2.5/offlineimap/", line 423, in
    password = self.repos.getpassword()
  File "/usr/lib/pymodules/python2.5/offlineimap/repository/", line 174,
  in getpassword
    netrcentry = netrc.netrc().authenticators(self.gethost())
  File "/usr/lib/python2.5/", line 28, in __init__
    raise IOError("Could not find .netrc: $HOME is not set")
IOError: Could not find .netrc: $HOME is not set

No debug messages were logged for Account sync ***.

With $ env, I've noticed $HOME is not set, though issuing echo $HOME at prompt
reveals the correct path. I'm not sure how to address this issue.

My .netrc is actually a symlink to a different file (for privacy reasons, as I
host my config files publically for quick backup/restore), but making ~/.netrc
an actual file does not resolve the matter.

> For more strategies on getting to the bottom of this I'd take a look at someof
> the top hits on a google search for some combination of '[debug|troubleshoot]
> cron job'.

Will do. I appreciate your advice so far.


More information about the OfflineIMAP-project mailing list