在S3 Bucket AWS中删除版本

时间:2018-10-17 02:28:11

标签: amazon-web-services amazon-s3 aws-cli

我无法删除由更新个人资料图片的错误所创建的1.6亿多个版本的存储桶,并且由于我们已经设置了版本控制,因此造成了混乱。我试图使用AWS网站删除版本并删除s3存储桶,但是auth令牌在它遍历所有文件并使我退出AWS之前已经过期。然后,我尝试使用AWS CLI,然后遇到另一个问题。命令和错误可以在下面找到。

aws s3api delete-bucket --bucket pinch-profile-picture --region us-east-2

并收到以下错误:

  

调用DeleteBucket操作时发生错误(BucketNotEmpty):您尝试删除的存储桶不为空。您必须删除存储桶中的所有版本。

AWS不想为我们触摸或删除存储桶,因为它们将有责任删除某些内容。

我可能可以采取的以下步骤是:

1)创建一个脚本以删除所有内容。

2)弄清楚如何从CLI删除所有版本

3)弄清楚如何防止令牌在网站上过期

4)“在这里插入您的建议”

..

99)手动删除,但此限制为每页300个,这意味着如果我们创建2亿个版本,我将需要删除300个项目,666,666次。所以那就不行了。

但是我愿意提出建议,关于删除S3存储桶及其版本的提示是什么?如果您以前曾经遇到过这种情况,或者有过构建脚本的经验,请帮助兄弟帮忙。

最好的问候

Akshay Kumar

2 个答案:

答案 0 :(得分:1)

如果无法强制删除存储桶,则可以Create a Lifecycle Policy for an S3 Bucket

配置它以删除所有版本的对象,然后在24小时内对象和版本将消失!

然后您可以删除存储桶。

答案 1 :(得分:-1)

您可以尝试以下命令:

aws s3 rb s3://mybucket --force
  

强制参数:删除存储桶中的所有对象,最后将其删除   删除自己。

Read More

相关问题