Amazon web services 如何从CLI为1000多个对象使用aws s3同步
我正在尝试使用aws cli S3 sync或aws cli S3 cp--recursive将S3存储桶(实际上是数字海洋空间)的内容同步到本地硬盘 我尝试过使用aws cliAmazon web services 如何从CLI为1000多个对象使用aws s3同步,amazon-web-services,amazon-s3,aws-cli,Amazon Web Services,Amazon S3,Aws Cli,我正在尝试使用aws cli S3 sync或aws cli S3 cp--recursive将S3存储桶(实际上是数字海洋空间)的内容同步到本地硬盘 我尝试过使用aws clisync和cp命令,但都在1000个对象之后停止。我知道sync提到用--page size标志()将其限制为1000个对象,但似乎我所看到的一切都在谈论同步整个存储桶,但我的sync停止在1000个对象,我有700万个对象要同步 aws s3 cp s3://MYBUCKET ~/Documents/temp_spac
sync
和cp
命令,但都在1000个对象之后停止。我知道sync提到用--page size标志()将其限制为1000个对象,但似乎我所看到的一切都在谈论同步整个存储桶,但我的sync停止在1000个对象,我有700万个对象要同步
aws s3 cp s3://MYBUCKET ~/Documents/temp_space --source-region https://sfo2.digitaloceanspaces.com --profile MYPROFILE --endpoint=https://sfo2.digitaloceanspaces.com --recursive
我希望能够同步整个bucket,而不仅仅是同步1000个对象。参数''-page size''限制请求的数量或结果,而不是总数 例如,在一个场景中,您有一个包含5000个对象的目录,您希望将其复制到一个s3 bucket。您的命令看起来类似于aws s3 cp。s3://your bucket。这将把当前目录5000个对象的所有内容复制到s3存储桶中 默认(和最大)
-页面大小
是1000个对象,因此,因为我们没有指定-页面大小
,为了完成将所有5000个对象复制到s3存储桶,AWSCLI将处理5个请求(5 x 1000个对象)来复制所有5000个对象
通常,您应该能够忽略此可选参数并运行aws s3 cp
或aws s3 sync
,而不会出现问题。如果您面临请求超时问题,则可以添加值小于1000的-page size
参数来解决超时问题。简而言之,您可以使用替换aws cli
s3列表对象API的v1最多返回1000个条目,一个标记可以用于下一个查询。但是由于某些原因,aws cli s3 sync
不支持标记
s3列表对象API的v2使用ContinuationToken
替换标记<代码>aws cli
更好地与v2配合使用
对于DigitalOcean,当前不支持版本2列表类型
因此,您必须使用s3cmd。您是否尝试过这样做,或者您的问题仅基于阅读文档?我刚刚上传了52348个对象,使用的是“aws s3 cp-递归-安静”。s3://我的水桶“”,花了大约20分钟。这可能是数字海洋的一个限制?
aws sync cp s3://MYBUCKET ~/Documents/temp_space --source-region https://sfo2.digitaloceanspaces.com --profile MYPROFILE --endpoint=https://sfo2.digitaloceanspaces.com