本页面介绍如何更改存储桶的默认存储类别。将对象上传到存储桶时,如果您没有指定对象的存储类别,则系统会为该对象分配存储桶的默认存储类别。如需详细了解存储类别,请参阅存储类别。
所需的角色
为了获得更改存储桶的存储类别所需的权限,请让管理员向您授予存储桶的 Storage Admin (roles/storage.admin
) IAM 角色。
此预定义角色可提供更改存储桶的存储类别所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
storage.buckets.get
- 仅当您计划使用Trusted Cloud 控制台执行本页面上的任务时,才需要此权限。
storage.buckets.list
- 仅当您计划使用Trusted Cloud 控制台执行本页面上的任务时,才需要此权限。
storage.buckets.update
您也可以使用自定义角色来获取这些权限。
如需了解如何授予存储桶的角色,请参阅将 IAM 与存储桶搭配使用。
更改存储桶的默认存储类别
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要更改其存储类别的存储桶的名称。
在存储桶详情页面中,点击配置标签页。
点击默认存储类别的修改图标 (edit)。
在重叠式窗口中,为您的存储桶选择所需的新默认存储类别。
点击保存。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
使用带有 --default-storage-class
标志的 gcloud storage buckets update
命令:
gcloud storage buckets update gs://BUCKET_NAME --default-storage-class=STORAGE_CLASS
其中:
BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。STORAGE_CLASS
是您想要用于存储桶的新存储类别,例如nearline
。
响应如下例所示:
Setting default storage class to "nearline" for bucket gs://my-bucket
客户端库
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON API
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。创建一个包含以下信息的 JSON 文件:
{ "storageClass": "STORAGE_CLASS" }
其中
STORAGE_CLASS
是您想要用于存储桶的新存储类别,例如nearline
。使用
cURL
,通过PATCH
Bucket 请求调用 JSON API:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=storageClass"
其中:
JSON_FILE_NAME
是您在第 2 步中创建的 JSON 文件的路径。BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。
XML API
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。创建一个包含以下信息的 XML 文件:
<StorageClass>STORAGE_CLASS</StorageClass>
其中
STORAGE_CLASS
是您想要用于存储桶的新存储类别的名称,例如nearline
。使用
cURL
通过范围限定为?storageClass
的PUT
Bucket 请求调用 XML API:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME?storageClass"
其中:
XML_FILE_NAME
是您在第 2 步中创建的 XML 文件的路径。BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。