停用 s3 存储桶上的版本控制

Deactivate versioning on s3 buckets

我在我的存储桶上激活了版本控制。我用过:

aws s3api put-bucket-versioning --bucket my_bucket --versioning-configuration Status=Enabled --endpoint-url https://XXXXXXXXX

现在,我想停用该存储桶上的版本控制。所以,我有 2 个问题:

或者我是否需要在“状态”行编辑 ./lifecycle.json 文件?

{
    "Rules": [
        {
            "ID": "Delete old versions after 90 days",
            "Status": "Enabled",   -> Suspended 
            "Prefix": "",
            "NoncurrentVersionExpiration": {
                "NoncurrentDays": 90
              }
        }
    ]
}

可能这两种解决方案都有效?

最佳

版本控制无法关闭,只能暂停。

所以,是的,您可以使用 Status=Suspended 来停用版本控制过程。

生命周期操作独立于存储桶的版本控制状态。您的生命周期策略配置为在 90 天后删除以前的版本。保留其当前配置,它将在接下来的 90 天内继续使旧版本过期。之后,它不会做任何事情,因为没有新版本的对象要过期,所以您可以删除生命周期规则。 (因此,暂时不要更改任何内容。)

如果您希望立即删除对象的所有non-current版本,您可以修改生命周期规则并将NoncurrentDays设置为1,使版本过期(删除)更快。 (我不确定它是否适用于零。)