我已经成功将文件上传到Glacier,但是我想直接上传到Deep Archive。我已经搜索了文档,但是没有提到如何将存储类直接设置为DEEP_ARCHIVE

最佳答案

您可以使用put_object()(具有StorageClass参数),也可以在指定upload_file()的同时使用ExtraArgs:

import boto3

s3_client = boto3.client('s3')

s3_client.upload_file('/tmp/hello.txt', 'my-bucket', 'hello.txt', ExtraArgs={'StorageClass': 'DEEP_ARCHIVE'})

可以在ALLOWED_UPLOAD_ARGS上找到允许的ExtraArgs

需要说明的是:这是上传到Amazon S3的,但将存储类设置为Glacier Deep Archive。这与上传到Amazon Glacier服务不同。 (如今,通过S3存储类更容易使用Glacier)。

10-05 19:14