帮助文档 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
帮助文档 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 对象存储
  4. 开发参考
  5. 常用工具
  6. 命令行工具ossutil 1.0
  7. 常用命令
  8. lifecycle(生命周期)

lifecycle(生命周期)

  • 常用命令
  • 发布于 2025-04-21
  • 0 次阅读
文档编辑
文档编辑

并不是所有上传至OSS的数据都需要频繁访问,但基于数据合规或者存档等原因,部分数据仍需要继续以冷存储类型进行保存。或者基于业务使用场景,希望批量删除Bucket内不再需要保存的数据,您可以通过ossutil lifecycle命令配置基于最后一次修改时间(Last Modified Time)的生命周期规则。如果您希望OSS自动监测数据的访问模式并识别冷数据,然后将识别出来的冷数据进行存储类型的转换,从而达到数据的冷热分层存储,最终降低存储成本,您可以配置基于最后一次访问时间(Last Access Time)的生命周期规则。

注意事项

  • 要添加或修改生命周期规则,您必须具有oss:PutBucketLifecycle权限;要获取生命周期规则配置,您必须具有oss:GetBucketLifecycle权限;要删除生命周期规则配置,您必须具有oss:DeleteBucketLifecycle权限。具体操作,请参见为RAM用户授权自定义的权限策略。

  • 在配置基于最后一次修改时间或者最后一次访问时间的生命周期规则之前,请确保您已了解该功能。详情请参见基于最后一次修改时间的生命周期规则和基于最后一次访问时间的生命周期规则。

  • 从ossutil 1.6.16版本开始,命令行中Binary名称支持直接使用ossutil,您无需根据系统刷新Binary名称。如果您的ossutil版本低于1.6.16,则需要根据系统刷新Binary名称。更多信息,请参见命令行工具ossutil命令参考。

  • 关于生命周期规则的更多信息,请参见生命周期。

  • 当您在OSS ON云盒中使用该命令时:

    1. 将配置文件中的Endpoint替换为云盒Endpoint。更多信息,请参见云盒Endpoint。

    2. 在本文已有示例的基础上添加--sign-version、--region以及--cloudbox-id选项。关于这三个选项的具体用法,请参见通用选项。

  • 仅支持通过生命周期规则删除云盒Bucket中的Object,不支持转换Object存储类型。

添加或修改生命周期规则

添加或修改生命周期规则步骤如下:

  1. 创建本地文件,并在文件中配置XML格式的生命周期规则。

  2. ossutil先从本地文件中读取生命周期配置,然后将读取到生命周期配置添加到指定的Bucket。

  • 命令格式

    ossutil lifecycle --method put oss://bucketname local_xml_file

    参数说明如下:

    参数

    说明

    bucketname

    添加或修改生命周期规则的存储空间名称。

    local_xml_file

    配置生命周期规则的本地文件名称,例如localfile.xml。

  • 使用示例

    重要

    您可以为Bucket添加多条生命周期规则,规则名称(ID)是生命周期配置的唯一标识。若添加的规则ID已存在,则返回409错误。

    1. 在本地创建名为localfile.xml文件,并根据使用场景写入不同的生命周期规则。

      常见的生命周期规则如下:

      • 示例1

        指定生命周期规则应用于examplebucket内的所有Object(即Prefix为空),在距其最后一次修改时间超过365天后全部删除;此外还指定了Prefix为test/,指示与前缀test/匹配的Object距其最后修改时间超过30天后转换为Archive存储类型。

        有关生命周期支持转换的存储类型的更多信息,请参见通过生命周期规则自动转换Object的存储类型。

        <?xml version="1.0" encoding="UTF-8"?>
        <LifecycleConfiguration>
          <Rule>
            <ID>test-rule1</ID>
            <Prefix></Prefix>
            <Status>Enabled</Status>
            <Expiration>
              <Days>365</Days>
            </Expiration>
          </Rule>
          <Rule>
            <ID>test-rule2</ID>
            <Prefix>test/</Prefix>
            <Status>Enabled</Status>
            <Transition>
              <Days>30</Days>
              <StorageClass>Archive</StorageClass>
            </Transition>
          </Rule>
        </LifecycleConfiguration>
      • 示例2

        指定生命周期规则应用于examplebucket内的所有Object(即Prefix为空),在其最后一次修改时间早于2019年12月30日的Object过期。

        <?xml version="1.0" encoding="UTF-8"?>
        <LifecycleConfiguration>
          <Rule>
            <ID>test-rule0</ID>
            <Prefix></Prefix>
            <Status>Enabled</Status>
            <Expiration>
              <CreatedBeforeDate>2019-12-30T00:00:00.000Z</CreatedBeforeDate>
            </Expiration>
          </Rule>
        </LifecycleConfiguration>
      • 示例3

        在版本控制状态下,指定examplebucket内的所有Object距其最后一次修改时间超过10天后转换为IA存储类型,Object成为非当前版本60天后转换为Archive存储类型,Object成为非当前版本90天后删除。

        <?xml version="1.0" encoding="UTF-8"?>
        <LifecycleConfiguration>
          <Rule>
            <ID>test-rule3</ID>
            <Prefix></Prefix>
            <Status>Enabled</Status>
            <Transition>
              <Days>10</Days>
              <StorageClass>IA</StorageClass>
            </Transition>
            <NoncurrentVersionTransition>
              <NoncurrentDays>60</NoncurrentDays>
              <StorageClass>Archive</StorageClass>
            </NoncurrentVersionTransition>
            <NoncurrentVersionExpiration>
              <NoncurrentDays>90</NoncurrentDays>
            </NoncurrentVersionExpiration>
          </Rule>
        </LifecycleConfiguration>
      • 示例4

        在以下生命周期规则中指定前缀为data/的所有文件在距其最后一次访问时间200天后转为低频访问类型。且再次访问前缀为logs的文件时,这些文件仍保留为低频访问类型。

        <?xml version="1.0" encoding="UTF-8"?>
        <LifecycleConfiguration>
          <Rule>
            <ID>test-rule4</ID>
            <Prefix>data/</Prefix>
            <Status>Enabled</Status>
            <Transition>
              <Days>200</Days>
              <StorageClass>IA</StorageClass>
              <IsAccessTime>true</IsAccessTime>
              <ReturnToStdWhenVisit>false</ReturnToStdWhenVisit>
            </Transition>    
          </Rule>  
        </LifecycleConfiguration>

  1. 为examplebucket添加生命周期规则。

    ossutil lifecycle --method put oss://examplebucket localfile.xml

    以下输出结果表明已成功添加生命周期规则。

    0.299514(s) elapsed

获取生命周期规则配置

  • 命令格式

    ossutil lifecycle --method get oss://bucketname [local_xml_file]

    参数说明如下:

    参数

    说明

    bucketname

    获取生命周期规则配置的目标Bucket名称。

    local_xml_file

    用于存放生命周期规则配置的本地文件名称,例如localfile.xml。如果未指定此参数,则生命周期规则配置将直接输出到屏幕。

  • 使用示例

    获取examplebucket配置的生命周期规则。

    ossutil lifecycle --method get oss://examplebucket localfile.xml

    以下输出结果表明已成功获取生命周期规则配置,并将其写入本地localfile.xml文件。

    0.212407(s) elapsed

删除生命周期规则配置

  • 命令格式

    ossutil lifecycle --method delete oss://bucketname
  • 使用示例

    删除examplebucket的生命周期规则配置。

    ossutil lifecycle --method delete oss://examplebucket

    以下输出结果表明已删除examplebucket的生命周期规则配置。

    0.530750(s) elapsed

通用选项

当您需要通过命令行工具ossutil切换至另一个地域的Bucket时,可以通过-e选项指定该Bucket所属的Endpoint。当您需要通过命令行工具ossutil切换至另一个阿里云账号下的Bucket时,可以通过-i选项指定该账号的AccessKey ID,并通过-k选项指定该账号的AccessKey Secret。

例如您需要为另一个阿里云账号下,华东1(杭州)名为examplebucket的Bucket配置生命周期规则,命令如下:

ossutil lifecycle --method put oss://examplebucket localfile.xml -e oss-cn-hangzhou.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret

关于此命令的其他通用选项的更多信息,请参见通用选项。

相关文章

access-monitor(访问跟踪) 2025-04-21 17:21

如果您希望配置基于最后一次访问时间(Last Access Time)策略的生命周期规则来自动监测Bucket中Object的访问模式并识别冷数据,然后将识别出来的冷数据进行存储类型转换,最终降低存储成本。您需要先通过access-monitor命令为Bucket开启访问跟踪。

appendfromfile(追加上传) 2025-04-21 17:21

appendfromfile命令用于在已上传的追加类型文件(Appendable Object)末尾直接追加内容。

bucket-cname(自定义域名) 2025-04-21 17:21

您可以通过bucket-cname命令创建域名所有权验证所需的CnameToken以及管理Cname配置。 注意事项

bucket-encryption(服务器端加密) 2025-04-21 17:21

配置服务器端加密(即Bucket加密)后,OSS对上传的文件(Object)进行加密,再将得到的加密文件持久化保存。下载文件时,OSS自动将加密文件解密后返回给用户。本文介绍如何通过 bucket-encryption命令添加、修改、查询和删除Bucket的加密配置。

bucket-policy(授权策略) 2025-04-21 17:21

Bucket Policy是基于资源的授权策略,Bucket拥有者可以通过Bucket Policy授权其他用户访问OSS指定资源。bucket-policy命令用于添加、修改、查询、删除Bucket授权策略(Bucket Policy)。

bucket-tagging(存储空间标签) 2025-04-21 17:21

您可以通过存储空间(Bucket)的标签功能, 对Bucket进行分类管理,例如对拥有指定标签的Bucket设置访问权限等。bucket-tagging命令用于添加、修改、查询、删除Bucket的标签配置。 注意事项

目录
Copyright © 2025 your company All Rights Reserved. Powered by 博智数字服务平台.
闽ICP备08105208号-1