1

我正在使用 s3cmd 1.1.0beta 将大于 5 GB 的文件上传到 Amazon S3。这是因为早于 1.1.0 的 s3cmd 无法上传大于 5 GB 的文件(亚马逊单部分上传限制),而最新的 beta 版本能够使用多部分上传将这些文件上传到 S3。

问题是:我无法对通过 s3cmd 1.1.0 上传的大于 5 GB 的文件执行任何操作。我怀疑这可能是因为 s3cmd 设置的 Etag 与亚马逊期望的 Etag 不匹配:

具体问题如下(均通过web控制台):

  1. 当我尝试将这些文件从一个存储桶复制到另一个存储桶时,Amazon S3 抱怨:“由于来自以下的错误,以下对象未被复制:”
  2. 当我尝试更改这些文件的任何属性时,S3 抱怨:“由于以下对象的错误,未启用或禁用附加属性:”

有什么方法可以修复大于 5 GB 文件中的 Etag,以便我能够对这些文件执行操作?

4

1 回答 1

1

好的,经过一番调查,我发现问题与 Amazon S3 无法本地处理大于 5 GB 的文件有关。

为了对大于 5 GB 的文件进行复制或任何操作,您必须专门使用亚马逊的分段上传和相关 API 来处理大文件。

显然,即使是亚马逊的 AWS Web 控制台也只使用简单的 API,这些 API 仅适用于小于 5 GB 的文件,因此如果您想对大于 5 GB 的文件执行任何操作,则需要编写自己的代码使用 AWS API 对这些文件进行操作!

于 2013-03-04T17:09:06.327 回答