添加 echos/dates 时,s3cmd 不作为 cron 任务工作
s3cmd not working as cron-task when echos/dates are added
我有一个 Digital Ocean Droplet (VPS) 运行ning Ubuntu 14.04。我已经安装 s3cmd 并且能够 运行 使用此命令成功同步:
s3cmd sync --recursive --preserve /srv s3://MY-BUCKET-NAME
如果我每分钟将相同的命令放入 .sh 到 运行 作为 cron 任务,它会起作用:
* * * * * sh /srv/backupToS3.sh >> /srv/backupToS3.log
但是当我向 .sh 添加一些回声和日期时:
echo 'Started:'
date +'%a %b %e %H:%M:%S %Z %Y'
s3cmd sync --recursive --preserve /srv s3://MY-BUCKET-NAME
echo 'Finished:'
date +'%a %b %e %H:%M:%S %Z %Y'
s3cmd 同步不再 work/run。但是回声和日期打印到日志文件:
Started:
Mon Jun 8 17:45:01 PDT 2015
Finished:
Mon Jun 8 17:45:01 PDT 2015
任何帮助或推动正确的方向将不胜感激。我最初跟随 this article 走到这一步。
s3cmd 使用位于 ~/.s3cfg 的配置文件。可能很难把它捡起来。传入 --config=/home/username/.s3cfg
看看是否有帮助。
在任何情况下,s3cmd 都不会持续维护。官方命令行客户端 (aws-cli) 在许多方面要好得多。
编辑:将其用作您的 .sh 文件,确保它设置了可执行位 (chmod 755 whatever.sh
)。
echo 'Started:'
date +'%a %b %e %H:%M:%S %Z %Y'
/usr/bin/s3cmd sync --recursive --preserve --config=/usr/bin/s3cmd --verbose /srv s3://MY-BUCKET-NAME
echo 'Finished:'
date +'%a %b %e %H:%M:%S %Z %Y'
我遇到了同样的问题,我试图弄清楚为什么它不是 运行。我的解决方案是将以下行添加到我的脚本的顶部:
export HOME=/home/$USERNAME
cd /home/$USERNAME
您还应该使用以下命令调用 s3cmd:
/usr/bin/s3cmd
或将以下行放在脚本的顶部:
PATH=$PATH:/usr/bin
我有一个 Digital Ocean Droplet (VPS) 运行ning Ubuntu 14.04。我已经安装 s3cmd 并且能够 运行 使用此命令成功同步:
s3cmd sync --recursive --preserve /srv s3://MY-BUCKET-NAME
如果我每分钟将相同的命令放入 .sh 到 运行 作为 cron 任务,它会起作用:
* * * * * sh /srv/backupToS3.sh >> /srv/backupToS3.log
但是当我向 .sh 添加一些回声和日期时:
echo 'Started:'
date +'%a %b %e %H:%M:%S %Z %Y'
s3cmd sync --recursive --preserve /srv s3://MY-BUCKET-NAME
echo 'Finished:'
date +'%a %b %e %H:%M:%S %Z %Y'
s3cmd 同步不再 work/run。但是回声和日期打印到日志文件:
Started:
Mon Jun 8 17:45:01 PDT 2015
Finished:
Mon Jun 8 17:45:01 PDT 2015
任何帮助或推动正确的方向将不胜感激。我最初跟随 this article 走到这一步。
s3cmd 使用位于 ~/.s3cfg 的配置文件。可能很难把它捡起来。传入 --config=/home/username/.s3cfg
看看是否有帮助。
在任何情况下,s3cmd 都不会持续维护。官方命令行客户端 (aws-cli) 在许多方面要好得多。
编辑:将其用作您的 .sh 文件,确保它设置了可执行位 (chmod 755 whatever.sh
)。
echo 'Started:'
date +'%a %b %e %H:%M:%S %Z %Y'
/usr/bin/s3cmd sync --recursive --preserve --config=/usr/bin/s3cmd --verbose /srv s3://MY-BUCKET-NAME
echo 'Finished:'
date +'%a %b %e %H:%M:%S %Z %Y'
我遇到了同样的问题,我试图弄清楚为什么它不是 运行。我的解决方案是将以下行添加到我的脚本的顶部:
export HOME=/home/$USERNAME
cd /home/$USERNAME
您还应该使用以下命令调用 s3cmd:
/usr/bin/s3cmd
或将以下行放在脚本的顶部:
PATH=$PATH:/usr/bin