从crontab运行时trac-admin hotcopy不工作

我最近更新Trac从0.11.4到0.12.2。 我正在使用以下shell脚本来备份Trac安装:

#!/bin/sh DIR=/root/backup/trac/ NAME=`date +%Y-%m-%d-%H-%M` cd $DIR trac-admin /var/trac/projects/myproject/ hotcopy ./temp tar -zcf TRAC_$NAME.tar.gz -C $DIR/temp . rm -rf ./temp 

从控制台运行时,它工作正常,但cronjob失败,出现以下消息:

 Traceback (most recent call last): File "/usr/bin/trac-admin", line 5, in <module> from pkg_resources import load_entry_point File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 2675, in <module> parse_requirements(__requires__), Environment() File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 552, in resolve raise DistributionNotFound(req) pkg_resources.DistributionNotFound: Trac==0.11.4 tar: /root/backup/trac//temp: Cannot chdir: No such file or directory tar: Error is not recoverable: exiting now 

为什么手动运行时而不是从crontab运行? 为什么现在如果我使用0.12.2,它会寻找Trac的0.11.4版本?

Trac已安装并通过easy_install升级。

build议在cron作业中使用完整path。 否则,您最终可能会调用错误的脚本或程序。

另外,你需要确保你正在同一个用户下执行你的脚本。