AWS S3上载失败:RequestTimeTooSkewed

时间:2014-09-21 22:22:46

标签: amazon-web-services amazon-s3

我正在使用

  

aws s3 sync~ / folder / s3:// --delete

将大量文件上传(并同步)到S3存储桶。一些 - 但不是全部 - 文件失败,抛出此错误消息:

  

上传失败:到s3:// bucketname / folder /   调用UploadPart操作时发生客户端错误(RequestTimeTooSkewed):请求时间和当前时间之间的差异太大

我知道这个错误的原因通常是与Internet时间不同步的本地时间,但是我正在运行NTP(在我的Ubuntu PC上)并且日期/时间看起来绝对准确 - 而且这个错误只有到目前为止,我上传的四十多个文件中约有15个被报道过。 有些文件相对较大 - 每个文件大约70MB - 而且我的上传速度并不理想:S3可能会比较初始和完成时间并将其差异报告为错误吗? 谢谢,

6 个答案:

答案 0 :(得分:15)

时间验证发生在您上传到S3的开始时,所以它不会对上传时间太长的文件造成影响。

尝试将您的系统时间与S3报告的内容进行比较,看看是否有任何不必要的时间偏差,只是为了确保:

# Time from Amazon
$ curl http://s3.amazonaws.com -v

# Time on your local machine
$ date -u

(以UTC格式返回时间)

答案 1 :(得分:8)

我在MacBook Pro上的docker容器内运行aws s3 cp并出现此错误。重启Docker for Mac修复了这个问题。

答案 2 :(得分:1)

现在看来,分段上传在aws s3上失败了。使用s3cmd可以很好地工作。

答案 3 :(得分:0)

您必须在计算机上同步当地时间。时间已经超出了世界时间。

答案 4 :(得分:0)

Amazon S3使用NTP作为系统时钟,以与您的时钟同步。 运行

sudo apt-get install ntp

然后打开/etc/ntp.conf并在底部添加

server 0.amazon.pool.ntp.org iburst
server 1.amazon.pool.ntp.org iburst
server 2.amazon.pool.ntp.org iburst
server 3.amazon.pool.ntp.org iburst

然后运行 service ntp restart

答案 5 :(得分:0)

我在MacOS上遇到问题。 我修好了 首选项->日期和时间->选中“自动设置日期和时间”框