这AWS 帖子从 2018 年开始,听起来现在应该可以通过 S3 样式的 PUT 请求在 glacier 中创建档案:
我将其解释为您可以使用 s3 CLI 或 sdk 交互来上传文件,而不是使用特定于 glacier 的 api 或转换文件。这是正确的吗?
我找不到任何关于这实际上如何工作的文档,因为有关 S3 PUT 到 Glacier 的链接只是指向存储类列表。尝试使用 进行了一些实验aws s3 cp
,但我不清楚您将使用 bucket/s3 uri 做什么。
有人知道是否支持这种用法吗?
答案1
在进行这些更改之前,需要在 Glacier 中创建一个存档并将文件放置在该存档中。您引用的链接详细说明了 Glacier 现在如何成为 S3 的存储类。您不再需要将文件移动到 Glacier,只需将它们作为存储类GLACIER
或上传即可DEEP_ARCHIVE
。您还可以通过“权限”选项卡或从命令行更改现有文件的存储类型。
从 AWS CLI,您可以使用类似以下命令:
aws s3 cp /etc/hosts s3://faketest/hosts --storage-class GLACIER
您可以使用以下方式查看存储类别s3api
:
aws s3api list-objects --bucket faketest
要从控制台执行此操作,请单击“属性”选项卡并选择“GLACIER”
如果您通过控制台上传文件,也可以类似地设置存储类。
对于现有文件,您可以通过 CLI 使用类似以下命令更改其存储类:
aws s3api copy-object --copy-source faketest/temp.txt --bucket faketest --storage-class GLACIER --key temp.txt
上述命令将现有文件从存储桶复制回同一存储桶,并更改存储类别。可能还有其他方法。
参考