我正在尝试创建一个好的脚本来将我的文件备份到Amazon S3存储服务中。考虑到这一点,我使用了s3cmd工具,它对此似乎非常有用。但有一件事困扰着我。有时,当我上传一个文件时,它会给我以下错误消息:
s3cmd sync --skip-existing -r --check-md5 -p -H --progress ./files/ s3://company-backup/files/
./files/random-file.1 -> s3://company-backup//files/random-file.1 [1 of 11]
3358720 of 14552064 23% in 10s 299.86 kB/s failed
WARNING: Upload failed: ./files/random-file.1 (timed out)
WARNING: Retrying on lower speed (throttle=0.00)
WARNING: Waiting 3 sec...所以在互联网上我发现了this post,它基本上是说在配置文件中增加socket_timeout,但是我如何才能计算出对许多不同大小的文件最好的timeout?我的意思是,有时我需要发送100MB和其他人的时间10GB。最糟糕的是,当连接被timeout关闭时,它会尝试再次发送文件,但并不是从哪里开始停止它,但是,从头开始,我真的需要避免这种情况。所以这里有两个问题:
1-如何知道最佳socket_timeout值
2-如何保持我的上传从哪里停止它?(在超时的情况下)
发布于 2014-08-18 23:06:50
回答问题的第二部分。新版本的s3cmd支持gets和puts上的--continue parameter。
https://stackoverflow.com/questions/16653286
复制相似问题