文档

mc retention set

语法

命令 mc retention set 可配置存储桶中对象或对象的 一次写入多次读取 (WORM) 锁定 设置。您也可以为存储桶设置默认对象锁设置,其中所有没有显式对象锁设置的对象将继承存储桶默认设置。

要锁定处于 法律保留 状态下的对象,请使用 mc legalhold set

mc retention set 需要 指定的存储桶启用了对象锁定。您只能在创建存储桶时启用对象锁定。有关创建启用对象锁定的存储桶的文档,请参见 mc mb --with-lock

以下命令在 myminio MinIO 部署上的 mydata 存储桶上设置一个默认的 30 天 治理 对象锁

mc retention set --default GOVERNANCE "30d" myminio/mydata

该命令具有以下语法

mc [GLOBALFLAGS] retention set                         \
                 [--bypass]                            \
                 [--default]                           \
                 [--recursive]                         \
                 [--rewind "string"]                   \
                 [--versions]                          \
                 [--version-id "string"]*              \
                 MODE                                  \
                 "VALIDITY"                            \
                 ALIAS
  • 方括号 [] 表示可选参数。

  • 共享一行参数相互依赖。

  • 使用管道 | 运算符分隔的参数是互斥的。

将示例复制到文本编辑器中,并在终端/shell 中运行命令之前根据需要进行修改。

mc retention set --version-id 与其他多个参数互斥。有关更多信息,请参见参考文档。

参数

MODE
必需

设置 ALIAS 的锁定模式。指定以下支持的值之一

  • governance

  • compliance

有关支持模式的更多信息,请参见 AWS S3 文档中的 对象锁定概述

需要指定 VALIDITY

VALIDITY
必需

对象在创建后保留在指定的 MODE 中的持续时间。

  • 对于天数,请指定格式为 Nd 的字符串。例如,

    30d 表示对象创建后的 30 天。

  • 对于年份,请指定格式为 Ny 的字符串。例如,

    1y 表示对象创建后的 1 年。

ALIAS
必需

要设置对象锁配置的对象或对象的完整路径。指定 MinIO 或与 S3 兼容的服务的 别名 以及存储桶的完整路径。例如

mc retention set play/mybucket/object.txt MODE VALIDITY
  • 如果 ALIAS 指定存储桶或存储桶前缀,请包含 --recursive 以将对象锁设置应用于存储桶内容。

  • mc retention set 默认情况下仅应用于最新的对象版本。使用 --version-id--versions 将对象锁设置分别应用于特定版本或对象的所有版本。

--bypass
可选

允许具有 s3:BypassGovernanceRetention 权限的用户修改对象。需要 governance 保留 MODE

--default
可选

使用 MODEVALIDITY 为指定为 ALIAS 的存储桶设置默认对象锁设置。在存储桶中创建的任何对象都将继承默认对象锁设置,除非使用 mc retention set 显式覆盖。

如果指定 --defaultmc retention set 将忽略所有其他标志。

--recursive, --r
可选

递归地将对象锁设置应用于指定 ALIAS 路径中的所有对象。

--version-id 互斥。

--rewind
可选

指示 mc retention set 仅对指定时间点存在的对象版本进行操作。

  • 要回溯到过去的特定日期,请将日期指定为 ISO8601 格式的时间戳。例如:--rewind "2020.03.24T10:00"

  • 要回溯一段时间,请将持续时间指定为 #d#hh#mm#ss 格式的字符串。例如:--rewind "1d2hh3mm4ss"

--rewind 需要指定的 ALIAS 是支持 存储桶版本控制 的与 S3 兼容的服务。对于 MinIO 部署,请使用 mc version 来启用或禁用存储桶版本控制。

--version-id, --vid
可选

指示 mc retention set 仅对指定的对象版本进行操作。

--version-id 需要指定的 ALIAS 是支持 存储桶版本控制 的与 S3 兼容的服务。对于 MinIO 部署,请使用 mc version 来启用或禁用存储桶版本控制。

与以下任何标志互斥

--versions
可选

指示 mc retention set 对存储桶中存在的

--versions 要求指定的 ALIAS 是一个支持 桶版本控制 的 S3 兼容服务。对于 MinIO 部署,使用 mc version 来启用或禁用桶版本控制。

使用 --versions--rewind 共同将保留设置应用于特定时间点存在的所有对象版本。

全局标志

此命令支持任何 全局标志

示例

设置默认桶保留设置

使用 mc retention set--recursive--default 一起设置默认桶保留设置。

mc retention set  --recursive --default MODE DURATION ALIAS/PATH
  • 用要启用的保留模式替换 MODE。MinIO 支持 AWS S3 保留模式 governancecompliance

  • 用对象锁定应生效的持续时间替换 DURATION。例如,要设置 30 天的保留期,请指定 30d

  • 用已配置的 S3 兼容主机的 alias 替换 ALIAS

  • 用桶的路径替换 PATH

该桶 *必须* 启用对象锁定才能使用此命令。您只能在创建桶时启用对象锁定。有关创建启用对象锁定的桶的更多信息,请参阅 mc mb --with-lock

为版本化对象设置对象锁定配置

使用 mc retention set--version-id 一起将保留设置应用于特定对象版本

mc retention set --version-id VERSION MODE DURATION ALIAS/PATH
  • 用对象的版本替换 VERSION

  • 用要启用的保留模式替换 MODE。MinIO 支持 AWS S3 保留模式 governancecompliance

  • 用对象锁定应生效的持续时间替换 DURATION。例如,要设置 30 天的保留期,请指定 30d

  • 用已配置的 S3 兼容主机的 alias 替换 ALIAS

  • 用对象的路径替换 PATH

使用 mc retention set--versions 一起将保留设置应用于特定对象版本

mc retention set --versions  MODE DURATION ALIAS/PATH
  • 用要启用的保留模式替换 MODE。MinIO 支持 AWS S3 保留模式 governancecompliance

  • 用对象锁定应生效的持续时间替换 DURATION。例如,要设置 30 天的保留期,请指定 30d

  • 用已配置的 S3 兼容主机的 alias 替换 ALIAS

  • 用对象的路径替换 PATH

该桶 *必须* 启用对象锁定才能使用此命令。您只能在创建桶时启用对象锁定。有关创建启用对象锁定的桶的更多信息,请参阅 mc mb --with-lock

行为

对象版本的保留

对于启用 versioning enabled 的桶,mc retention set 默认情况下对目标对象或对象的 *最新* 版本进行操作。 mc retention set 包括特定选项,当 *显式* 指定时,将该命令引导到对特定对象版本 *或* 对象的所有版本进行操作。

要将 mc retention set 引导到对对象的特定版本进行操作,请包括 --version-id 参数。

要将 mc retention set 引导到对对象的 *所有* 版本进行操作,请包括 --versions 参数。

S3 兼容性

mc 命令行工具是为与 AWS S3 API 兼容而构建的,并已通过 MinIO 和 AWS S3 测试,以确保预期功能和行为。

MinIO 不保证其他 S3 兼容服务,因为它们的 S3 API 实现未知,因此不受支持。虽然 mc 命令 *可能* 按文档工作,但任何此类使用均由您自行承担风险。