S3 命令在 cron 中不起作用

S3 命令在 cron 中不起作用

我有这个极其简单的 cron 作业:

48 20 * * * cd /home/pankaj;s3cmd -f get s3://myfile.gz

该命令本身可以运行。但 cron 作业却不行。cron 作业是为能够运行该命令的同一用户 (pankaj) 创建的。/var/log/syslog 中也没有太多信息。

Oct 15 20:48:01 dev CRON[17020]: (pankaj) CMD (cd /home/pankaj;s3cmd -f get s3://myfile.gz)
Oct 15 20:48:01 dev CRON[17019]: (CRON) info (No MTA installed, discarding output)

我怎样才能找出问题所在?.s3cfg 的权限如下:

pankaj@dev:~$ ls -l .s3cfg 
-rw------- 1 pankaj pankaj 2050 Feb  7  2018 .s3cfg

答案1

将 cronjob 修改为:

48 20 * * * cd /home/pankaj;s3cmd -f get s3://myfile.gz 2>&1 | tee log

日志显示:

s3cmd: command not found

:(。所以一个简单的改变就解决了这个问题:

48 20 * * * cd /home/pankaj;/usr/local/bin/s3cmd -f get s3://myfile.gz

相关内容