目前,我使用s3cmd将备份从服务器同步到s3。我使用类似于以下内容的cron来完成此操作:
MAILTO=my@email.address
01 03 * * * s3cmd sync /root/backup/backups/ s3://somebucket/这只是一个示例,要同步的文件已经在备份目录中了。目前,当我使用它时,我经常会收到关于上传失败的警告(由对等方重置),然后重试。在1或2次重试后,上传通常会到达那里。
我想知道的是,我是否可以将s3cmd的详细内容更改为只记录实际错误时的输出,而不是警告,以便只在需要查看某些内容时才发送电子邮件?
您可能可以在.s3cmd首选项文件中设置此选项,但我希望确保。
谢谢
发布于 2013-09-14 10:16:06
如果您有较新版本的s3cmd,请尝试--quiet (或-q)选项:
MAILTO=my@email.address
01 03 * * * s3cmd sync --quiet /root/backup/backups/ s3://somebucket/如果没有,只需将STDOUT重定向到/dev/null,如下所示:
MAILTO=my@email.address
01 03 * * * s3cmd sync /root/backup/backups/ s3://somebucket/ >/dev/null错误被发送到STDERR,所以它们仍然会被电子邮件发送出去。
关于S3CMD和STDERR:的更新
正如Valguss所指出的,s3cmd似乎总是将调试、信息、警告和错误消息记录到STDERR,因此上述方法将无法工作。
但是,可以从.s3cfg文件(在本例中为与cron作业关联的用户位于主目录中)控制详细级别:
[default]
verbosity = ERROR此时无法通过命令行参数配置ERROR的详细级别。
https://stackoverflow.com/questions/18782465
复制相似问题