【发布时间】:2014-12-31 23:55:20
【问题描述】:
我在使用 aws-cli 时遇到问题,我进行了 yum 更新,它更新了 awscli(除其他外),现在 awscli 在带有 SignatureDoesNotMatch 的大文件(例如 5.1 Gb)上失败。 具有较小文件的完全相同的命令(对同一个存储桶)有效。 如果我使用 python 中的 boto,大文件仍然有效。
它复制除了两个看起来像的所有部分(即,它被计数到 745 个部分中的 743 个),然后出现错误消息。
看起来像 awscli 中的错误? 但是,当我四处搜索时,我找不到任何关于它的信息。
这都是在一个 ec2 实例上执行的。
$ /usr/bin/aws --version
aws-cli/1.5.4 Python/2.6.9 Linux/3.14.20-20.44.amzn1.x86_64
$ ls -hl
-rw-rw-r-- 1 user user 4 Nov 4 21:14 small
-rw-rw-r-- 1 user user 5.1G Nov 4 20:02 big
$ /usr/bin/aws s3 cp small s3://mybucket/uploaded.ext
upload: ./small to s3://mybucket/uploaded.ext
$ /usr/bin/aws s3 cp big s3://mybucket/uploaded.ext
upload failed: ./big to s3://mybucket/uploaded.ext
A client error (SignatureDoesNotMatch) occurred when calling the UploadPart operation: The request signature we calculated does not match the signature you provided. Check your key and signing method.
编辑:以为我找到了,但仍然有这个问题。我宁愿坚持使用 awscli,因为它是我们在整个代码中使用的,而且它比 boto 快得多(至少在它工作时)
Edit2:它实际上变得越来越糟,我可以在控制台中重复相同的复制命令,有时它会通过,有时它不会
【问题讨论】:
标签: python amazon-web-services amazon-ec2 amazon-s3 aws-cli