【问题标题】:s3cmd not working as cron-task when echos/dates are added添加回声/日期时,s3cmd 不能作为 cron 任务工作
【发布时间】:2015-08-23 16:52:25
【问题描述】:

我有一个运行 Ubuntu 14.04 的 Digital Ocean Droplet (VPS)。我已经安装了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 同步不再工作/运行。但是回声和日期会打印到日志文件中:

Started:
Mon Jun  8 17:45:01 PDT 2015
Finished:
Mon Jun  8 17:45:01 PDT 2015

任何帮助或推动正确的方向都将非常感激。我最初是跟着this article 走到这一步的。

【问题讨论】:

    标签: amazon-web-services amazon-s3 cron cron-task s3cmd


    【解决方案1】:

    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'
    

    【讨论】:

    • 你是我见过的第二个提到 AWS-CLI 而不是 s3cmd 的人(第一个是关于 cron-task 的类似问题),也许我会考虑一下。我在我的主目录中没有看到 .s3cfg 文件(我通过 Cyber​​duck SFTP 进入 droplet,显示隐藏文件)。 /home 是空的。
    • 另外,该命令单独运行良好(没有回显和日期行)是否意味着 s3cmd 工作正常?
    • 如果您没有 .s3cfg,s3cmd 从哪里读取您的 IAM 密钥?
    • 啊,用查找命令找到它:find / -name .s3cfg,它在/root/.s3cfg。不过,您对我的其他问题/评论有何看法?是不是 s3cmd 运行良好,因为它运行时没有回显和日期线?
    • 确认...我应该输入--config=/root/.s3cfg吗?那是在 sm3cmd 行吗?即:s3cmd sync --recursive --preserve --config=/root/.s3cfg /srv s3://MY-BUCKET-NAME
    【解决方案2】:

    我遇到了同样的问题,我试图弄清楚它为什么没有运行。我的解决方案是将以下几行添加到脚本的顶部:

    export HOME=/home/$USERNAME cd /home/$USERNAME

    您还应该使用以下命令调用 s3cmd:

    /usr/bin/s3cmd
    

    或者将以下行放在脚本的顶部:

    PATH=$PATH:/usr/bin
    

    【讨论】:

      猜你喜欢
      • 2018-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-19
      • 2016-03-27
      • 2018-08-15
      • 2015-10-13
      • 1970-01-01
      相关资源
      最近更新 更多