除非我login,否则crontab不能在VirtualBox上运行

我在我的工作PC上的VirtualBox上运行Ubuntu Server 9.04作为开发环境。 我有一些脚本放在我的用户的crontab中,当我用SSH连接到虚拟机时,这些脚本全天运行。

昨天晚上,我closures了PuTTy和所有其他正在运行的应用程序(VirtualBox和VM除外),然后回家。 我今天早上回来发现我的cron作业根本没有运行,但是当我连接到虚拟机时,下一个预定的作业运行。 我把时间表设置为5分钟进行testing,再次断开,工作按计划停止。

他们似乎只运行,如果我login到机器。 显然,即使我没有login到虚拟机,我也希望它们按计划运行,否则没有意义。

有没有我没有正确configuration?

新的信息:

现在在/var/log/cron.log中有3个条目表示以下“私有目录的返回代码[256]”…条目对应于应该运行cron作业的条目。

我以为他们应该像我的用户名一样运行? 为什么我自己的userid无法在我的主目录中运行脚本?

这似乎是你正在尝试运行一个cron作为你的用户,并且你有某种forms的encryption主目录设置。

您的主目录(或其子集)在您login时被解锁并挂载,但是当您注销时,您的主目录不可用,因此日志中的错误将会消失。

您应该删除encryption,以另一个用户的身份运行cron作业,或者您可以尝试以您的用户身份运行作业,但是指定了不同的环境(最主要的是HOME)。