跳转到主要内容

这是本节的多页打印视图。 .

返回本页常规视图.

Silo 客户端管理

Silo 客户端 mc 提供 mc admin 命令,用于在 Silo 与兼容的 MinIO 部署上执行管理任务。

虽然 mc 支持通用 S3 兼容服务,但 mc admin 使用 MinIO 专用管理 API,因此仅支持 Silo 或兼容的 MinIO 部署。

mc admin 语法如下:

mc admin [FLAGS] COMMAND [ARGUMENTS]

命令速查

下表列出了 mc admin 命令:

命令

说明

mc admin accesskey

mc admin accesskey 命令及其子命令用于为 MinIO 部署中内部管理的用户创建和管理 Access Keys

mc admin cluster bucket

mc admin cluster bucket 命令及其子命令提供了用于手动导入和导出 MinIO 存储桶元数据的工具。

mc admin cluster iam

mc admin cluster iam 命令及其子命令提供了用于手动导入和导出 MinIO 身份与访问管理(IAM) 元数据的工具。

mc admin decommission

mc admin decommission 命令用于启动 MinIO 服务器池s 的下线流程。下线流程适用于移除较旧的服务器池,这些服务器池的硬件能力或性能已不再满足要求, 或相较部署中的其他池表现不足。MinIO 会根据每个池可用空闲空间的比例,自动将数据从被下线 的池迁移到部署中其余的池。

mc admin group

mc admin group 命令用于管理 MinIO 部署上的组。

mc admin heal

mc admin heal 命令会扫描受损或损坏的对象,并对这些对象执行自愈。

mc admin info

mc admin info 命令显示 MinIO 服务器的信息。 对于分布式 MinIO 部署,mc admin info 会显示部署中每个 MinIO 服务器的信息。

mc admin kms key

mc admin kms key 命令通过 MinIO Key Encryption Service (KES) 执行加密密钥管理操作。

mc admin logs

使用 mc admin logs 命令显示 MinIO 服务器日志。

mc admin policy

mc admin policy 命令用于管理可与 MinIO 基于策略的访问控制 (PBAC) 配合使用的策略。 MinIO PBAC 使用与 IAM 兼容的策略 JSON 文档来定义访问 MinIO 服务器资源的规则。

mc admin prometheus

mc admin prometheus 命令及其子命令用于访问 MinIO Prometheus 指标。

mc admin rebalance

mc admin rebalance 命令可用于在 MinIO 部署上启动、监控或停止再平衡操作。 再平衡会在部署中的所有池之间重新分配对象。

mc admin replicate

mc admin replicate 命令用于为一组 MinIO 对等站点创建并管理 站点复制

站点复制类似于 active-active 存储桶复制,但适用于多个 MinIO 部署。 在这组站点中,无论 IAM 设置、存储桶或对象发生何种变更,该变更都会在站点复制组中的所有站点间复制。

mc admin scanner

mc admin scanner 命令提供有关 scanner 进程的信息。

mc admin service

mc admin service 命令可用于重启或解除冻结 MinIO 服务器。

mc admin trace

mc admin trace 命令显示目标 MinIO 部署上发生的 API 操作。

mc admin update

mc admin update 命令会更新部署中的所有 MinIO 服务器。 该命令还支持使用私有镜像服务器,适用于部署环境无法访问公网的场景。

mc admin user

mc admin user 命令及其子命令用于管理 MinIO 用户

安装

请从下载与安装获取维护版客户端,或按 mc 参考文档中的源码构建说明操作。独立归档与 Linux 软件包使用 mcli 命令名;若主机安装的是该名称,请在示例中把 mc admin 替换为 mcli admin

快速开始

开始此流程前,请确保主机已 安装 mc

警告

重要

以下示例会临时禁用 bash 历史记录,以降低认证凭据明文泄露的风险。 这是一项基础安全措施,无法缓解所有可能的攻击向量。请遵循你所用操作系统的 安全最佳实践,在命令行中输入敏感信息。

使用 mc alias set 命令将该部署添加到 mc 配置中。

bash +o history
mc config host add <ALIAS> <ENDPOINT> ACCESS_KEY SECRET_KEY
bash -o history

将各参数替换为所需值。仅指定 mc config host add 命令会启动输入提示, 用于录入所需值。

使用 mc admin info 命令测试与新添加 MinIO 部署的连接:

mc admin info <ALIAS>

全局选项

mc admin 支持与 mc 相同的全局选项。 参见 全局选项

1 - mc admin accesskey

说明

新增: MinIO客户端版本RELEASE.2024-10-08T09-37-26Z

这些命令用于替代 mc admin user svcacct 命令及其子命令中的 MinIO IDP 功能。

描述

mc admin accesskey 命令及其子命令用于为 MinIO 部署中内部管理的用户创建和管理 Access Keys

每个访问密钥都关联到一个 用户身份,并继承其父用户直接附加的 策略 父用户所属组的策略。 每个访问密钥还支持可选的内联策略,可进一步将访问限制为父用户可用操作和资源的一个子集。

mc admin user svcacct 仅支持为 MinIO-managed 账户创建访问密钥。

要为 Active Directory/LDAP-managed 账户创建访问密钥,请使用 mc idp ldap accesskey 及其子命令。 要管理 OpenID Connect-managed users 的访问密钥,请登录 MinIO Console 并通过 UI 生成访问密钥。

mc admin accesskey 命令包含以下子命令:

子命令

描述

create

mc admin accesskey create 命令为现有 MinIO 用户添加新的 access key 和 secret key 对。

disable

mc admin accesskey disable 命令用于禁用 MinIO IDP 用户的现有访问密钥。

edit

mc admin accesskey edit 命令用于修改与指定用户关联的访问密钥配置。

enable

mc admin accesskey enable 命令用于启用现有访问密钥。

info

mc admin accesskey info 命令返回指定 access key(s) 的描述信息。

ls

mc admin accesskey ls 命令列出 MinIO 部署管理的用户、访问密钥或临时 security token service 密钥。

rm

mc admin accesskey rm 命令用于删除部署中与某个用户关联的访问密钥。

2 - mc admin accesskey create

语法

mc admin accesskey create 命令为现有 MinIO 用户添加新的 access key 和 secret key 对。

说明

OpenID Connect 或 AD/LDAP 用户的访问密钥

此命令用于为直接在 MinIO 部署上创建、且不由第三方方案管理的用户创建访问密钥。

要为 Active Directory/LDAP users 生成访问密钥,请使用 mc idp ldap accesskey create

以下命令会创建一个与现有 MinIO 用户关联的新访问密钥:

mc admin accesskey create        \
   myminio/ myuser               \
   --access-key myuseraccesskey  \
   --secret-key myusersecretkey  \
   --policy /path/to/policy.json

该命令会返回新账户的 access key 和 secret key。

命令语法如下:

mc [GLOBALFLAGS] admin accesskey create                    \
                                 ALIAS                     \
                                 [USER]                    \
                                 [--access-key string]     \
                                 [--secret-key string]     \
                                 [--policy path]           \
                                 [--name string]           \
                                 [--description string]    \
                                 [--expiry-duration value] \
                                 [--expiry date]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

USER

mc-cmd

Optional

MinIO 要为其添加新访问密钥的用户名。 如果未指定,MinIO 会为已认证用户生成 access key/secret key 对。

--access-key

mc-cmd

Optional

作为此账户 access key 使用的字符串。 若省略,MinIO 会自动生成一个随机的 20 字符值。

Access Key 名称在所有用户之间 必须 唯一。

--description

mc-cmd

Optional

为访问密钥添加描述。 例如,可以说明该访问密钥存在的原因。

--expiry

mc-cmd

Optional

为访问密钥设置过期日期。 该日期必须是未来时间。 不可设置已经过去的过期日期。

允许的日期和时间格式:

  • 2024-10-24
  • 2024-10-24T10:00
  • 2024-10-24T10:00:00
  • 2024-10-24T10:00:00Z
  • 2024-10-24T10:00:00-07:00

--expiry-duration 互斥。

--expiry-duration

mc-cmd

Optional

access key 保持有效的时长。 有效时间单位为 “ns”、”us”(或 “µs”)、”ms”、”s”、”m”、”h”。

以下示例会让凭证在 30 天后过期:

--expiry-duration 720h

--expiry 互斥。

--name

mc-cmd

Optional

为访问密钥添加人类可读名称。

--policy

mc-cmd

Optional

要附加到新访问密钥上的 policy document 的可读路径,最大大小为 2048 字符。 所附加策略不得授予父用户策略或组策略未明确允许的任何操作或资源访问权限。

--secret-key

mc-cmd

Optional

与新账户关联的 secret key。 若省略,MinIO 会自动生成一个随机的 40 字符值。

全局标志

此命令支持 全局标志 中的任意选项。

示例

为已认证用户创建 access key / secret key 对

以下命令会为当前登录到别名为 myminio 的 MinIO 部署的用户生成新的随机 access key 和 secret key 对。 该 access key 和 secret key 与已认证用户具有相同的访问策略。

mc admin accesskey create myminio/

为已认证用户创建自定义 access key / secret key 对

以下命令会为当前登录到别名为 myminio 的 MinIO 的用户创建新的 access key 和 secret key 对。 该 access key 和 secret key 与已认证用户具有相同的访问策略。

mc admin accesskey create myminio/ --access-key myaccesskey --secret-key mysecretkey

为另一位用户创建有时长限制的 access key / secret key 对

以下命令会为别名 myminio 上的用户 miniouser 创建新的 access key 和 secret key 对。 该 access key 和 secret key 与 miniouser 具有相同的访问策略。 这些凭证在创建后 24 小时内有效。

mc admin accesskey create myminio/ miniouser --expiry-duration 24h

为已认证用户创建会过期的 access key / secret key 对

以下命令会为当前登录到别名 myminio 的 MinIO 部署的用户生成新的随机 access key 和随机 secret key 对。 该 access key 和 secret key 与已认证用户具有相同的访问策略。 这些凭证将于 2025 年 1 月 15 日过期。

mc admin accesskey create myminio/ --expiry 2025-01-15

指定的日期 必须 是未来日期。 有关有效的日期时间格式,请参见 --expiry 标志。

为不同用户创建具有自定义访问权限的 access key / secret key 对

以下命令会为别名 myminio 上的用户 miniouser 创建新的 access key 和 secret key 对。 该 access key 和 secret key 的访问权限比 miniouser 更受限,具体由策略 JSON 文件指定。

mc admin accesskey create myminio/ miniouser --policy /path/to/policy.json

指定的策略文件 不得 授予 miniouser 当前尚未拥有的任何访问权限。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

3 - mc admin cluster bucket import

描述

说明

新增: RELEASE.2022-06-17T02-52-50Z

mc admin cluster bucket import 命令用于导入由 mc admin cluster bucket export 命令生成的存储桶元数据。

你可以使用此命令将元数据手动恢复到 MinIO 部署中的指定存储桶。

如果仅将部署指定为目标,此命令会将元数据对象应用到目标上所有匹配的存储桶。

以下命令将指定的元数据导入到 myminio 部署。

mc admin cluster bucket import myminio ~/minio-metadata-backup/myminio-cluster.zip

命令语法如下:

mc [GLOBALFLAGS] admin cluster bucket import  \
                                    ALIAS[/BUCKET] \
                                    METADATA.ZIP
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

METADATA.ZIP

mc-cmd

Required

要导入的元数据文件路径。

使用 mc admin cluster bucket export 导出存储桶元数据,以供此命令使用。

BUCKET

mc-cmd

Optional

应用导入元数据的存储桶。

全局标志

此命令支持 全局标志 中的任意选项。

4 - mc admin cluster iam import

描述

说明

新增: RELEASE.2022-06-17T02-52-50Z

mc admin cluster iam import 命令导入由 mc admin cluster iam export 命令创建的 IAM 元数据。

您可以使用此命令手动恢复 MinIO 部署的 IAM 元数据设置。

说明

新增: mc

RELEASE.2024-09-09T07-53-10Z

该命令会输出导入结果,包括以下内容:

  • 按实体类型统计已导入的单个实体数量
  • 按策略导入目标的实体类型列出已导入策略
  • 导入失败的实体列表

以下命令将指定文件中的 IAM 元数据导入到 myminio 部署。

mc admin cluster iam import myminio ~/minio-metadata-backup/myminio-cluster.zip

命令语法如下:

mc [GLOBALFLAGS] admin cluster iam import  \
                                   ALIAS \
                                   IAM-METADATA.ZIP
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

RELEASE.2023-05-04T18-10-16Z 开始,mc admin cluster iam import 新增了对以尾随正斜杠结尾的别名 ALIAS/ 的支持。 在此版本之前,如果提供尾随正斜杠,命令会执行失败。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

IAM-METADATA.ZIP

mc-cmd

Required

要导入的 IAM 元数据文件路径。

使用 mc admin cluster iam export 导出 IAM 元数据,以供此命令使用。

全局标志

此命令支持 全局标志 中的任意选项。

5 - mc admin policy attach

语法

将一个或多个 IAM 策略附加到 MinIO 管理的用户或组

说明

变更: RELEASE.2023-05-27T05-56-19Z

要成功附加策略,所引用的用户或组必须存在。

必须且只能指定 --user--group 二者之一。

以下命令将 readonly 策略附加到 aliasmyminio 的部署中的用户 james

mc admin policy attach myminio readonly --user james

该命令使用以下语法:

mc admin policy attach                       \
                TARGET                       \
                POLICY                       \
                [POLICY...]                  \
                [--user USER | --group GROUP]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

警告

重要

此命令仅用于管理 MinIO 管理 用户的策略关联。

如需为 OpenID 管理的用户附加策略,请参见 OpenID Connect 访问管理

如需为 Active Directory/LDAP 用户或组附加策略,请使用 mc idp ldap policy attach

参数

mc admin policy attach 命令接受以下参数:

TARGET

mc-cmd

Required

已配置 MinIO 部署的 alias,该部署中包含要附加一个或多个策略的用户或组。

POLICY

mc-cmd

Required

要附加到用户或组的策略名称。

你可以通过空格分隔每个策略名称,一次附加多个策略。

MinIO 部署默认包含以下 内置策略

--user

mc-cmd

Optional

要附加一个或多个策略的用户身份名称。 只能指定一个用户。

你必须包含 --user--group 标志之一。 --user 标志不能与 --group 标志同时使用。

--group

mc-cmd

Optional

要附加一个或多个策略的组身份名称。 只能指定一个组。

属于该组的所有用户都会继承与该组关联的策略。

你必须包含 --group--user 标志之一。 --group 标志不能与 --user 标志同时使用。

全局标志

此命令支持 全局标志 中的任意选项。

示例

readonly 策略附加到 alias 为 myminio 的部署中的用户 james

mc admin policy attach myminio readonly --user james

audit-policyacct-policy 策略附加到 alias 为 myminio 的部署中的组 legal

mc admin policy attach myminio audit-policy acct-policy --group legal

6 - mc admin prometheus generate

描述

mc admin prometheus generate 命令会生成一个用于 Prometheus 的指标抓取配置文件。

有关 MinIO 与 Prometheus 配合使用的完整文档,请参见 How to monitor MinIO server with Prometheus

从 MinIO 服务端 RELEASE.2024-07-15T19-02-30Z 和 MinIO 客户端 RELEASE.2024-07-11T18-01-28Z 开始,metrics version 3 (v3) 提供了额外的端点和指标。 要生成 v3 抓取配置,请使用 --api_version v3 选项。

MinIO 建议新部署使用 version 3 (v3)。 现有部署可以继续使用 metrics version 2

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

以下命令会为 alias myminio 指向的部署生成一个 Prometheus 抓取配置,用于采集 version 2 的存储桶指标:

mc admin prometheus generate myminio bucket

该命令语法如下:

mc [GLOBALFLAGS] admin prometheus generate                                        \
                                  ALIAS                                           \
                                  [TYPE]                                          \
                                  [--api_version v3]                              \
                                  [--bucket <bucket name>]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

已配置 MinIO 部署的 alias,该命令会为该部署生成与 Prometheus 兼容的配置文件。

--api-version

mc-cmd

Optional

要为 v3 metrics 生成抓取配置,请添加 --api-version v3 参数。 v3 是唯一接受的值。

省略 --api-version 可生成 v2 metrics 配置。

--bucket

mc-cmd

Optional

仅适用于 v3 指标。

对于返回存储桶级指标的 v3 指标类型,请指定存储桶名称。 需要 --api-version

--bucket 适用于以下 v3 指标类型:

  • api
  • replication

以下示例为存储桶 mybucket 的 API 指标生成配置:

mc admin prometheus generate ALIAS api --bucket mybucket --api-version v3
TYPE

mc-cmd

Optional

要抓取的指标类型。

metrics version 3 的有效值为:

  • api
  • audit
  • cluster
  • debug
  • ilm
  • logger
  • notification
  • replication
  • scanner
  • system

如果未指定,v3 命令会返回所有指标。

metrics version 2 的有效值为:

  • bucket
  • cluster
  • node
  • resource

如果未指定,v2 命令返回 cluster 指标。 Cluster 指标包含部分 node 指标的汇总。

全局参数

此命令支持 全局标志 中的任意选项。

示例

生成默认的 v3 metrics 配置

使用 mc admin prometheus generate --api-version v3 生成一个抓取配置,用于为 MinIO 部署采集所有 v3 指标:

mc admin prometheus generate ALIAS --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

输出类似如下:

scrape_configs:
- job_name: minio-job
  bearer_token: [auth token]
  metrics_path: /minio/metrics/v3
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

为其他类型生成 v3 metrics 配置

要为其他指标类型生成配置,请指定类型。 以下命令会为 v3 cluster 类型指标生成抓取配置:

mc admin prometheus generate ALIAS cluster --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

输出类似如下:

scrape_configs:
- job_name: minio-job-cluster
  bearer_token: [auth token]
  metrics_path: /minio/metrics/v3/cluster
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

要为 different metric type 生成配置,请将 cluster 替换为所需类型。

生成 v3 bucket replication metrics 配置

以下示例会为存储桶 mybucket 的 v3 replication 指标生成抓取配置:

mc admin prometheus generate ALIAS replication --bucket mybucket --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

输出类似如下:

scrape_configs:
- job_name: minio-job-replication
  bearer_token: [auth token]
  metrics_path: /minio/metrics/v3/bucket/replication/mybucket
  scheme: https
  static_configs:
  - targets: [`localhost:9000`]

生成用于存储桶 API 指标的 v3 配置

以下示例会为存储桶 mybucket 的 v3 API 指标生成抓取配置:

mc admin prometheus generate ALIAS api --bucket mybucket --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

输出类似如下:

scrape_configs:
- job_name: minio-job-api
  bearer_token: [auth token]
  metrics_path: /minio/metrics/v3/bucket/api/mybucket
  scheme: https
  static_configs:
  - targets: [`localhost:9000`]

生成默认的 v2 metrics 配置

默认情况下,mc admin prometheus generate 会生成用于 v2 cluster 指标的抓取配置:

mc admin prometheus generate ALIAS
  • ALIAS 替换为 MinIO 部署的 alias

输出类似如下:

scrape_configs:
- job_name: minio-job
  bearer_token: [auth token]
  metrics_path: /minio/v2/metrics
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

为其他指标类型生成 v2 配置

要为其他指标类型生成配置,请指定类型。 以下命令会为 v2 bucket 类型指标生成抓取配置:

mc admin prometheus generate ALIAS bucket

7 - mc admin scanner status

描述

mc admin scanner status 命令会显示 MinIO Server 的 scanner 信息的实时摘要。

该命令的别名为 mc admin scanner info

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

以下示例返回扫描器进程当前状态的信息。

mc admin scanner status myminio

该命令返回的结果类似如下:

Overall Statistics
------------------
Last full scan time:   0d0h15m; Estimated 2879.79/month
Current cycle:         (between cycles)
Active drives: 0

Last Minute Statistics
----------------------
Objects Scanned:       3 objects; Avg: 67.611µs; Rate: 4320/day
Versions Scanned:      3 versions; Avg: 2.506µs; Rate: 4320/day
Versions Heal Checked: 0 versions; Avg: 0ms
Read Metadata:         3 objects; Avg: 40.817µs, Size: 395 bytes/obj
ILM checks:            3 versions; Avg: 714ns
Check Replication:     3 versions; Avg: 892ns
Verify Deleted:        0 folders; Avg: 0ms
Yield:                 18ms total; Avg: 6ms/obj

该命令的语法如下:

mc admin scanner status ALIAS
                       [--bucket <string>]     \
                       [--interval <value>]   \
                       [--max-paths <value>]  \
                       [-n <integer>]         \
                       [--nodes <string>]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

用于显示 scanner API 操作的 MinIO 部署 alias

--bucket

mc-cmd

Optional

将 scanner 统计信息过滤到指定存储桶。

--interval

mc-cmd

Optional

两次状态请求刷新之间等待的秒数。 如果未指定,状态每 3 秒刷新一次。

--max-paths

mc-cmd

Optional

要显示的活跃路径的最大数量。 使用 -1 表示不限制路径数量。

当被扫描的驱动器数量较大时,限制显示路径数量可以减少控制台窗口滚动。

如果未指定,结果将返回不限制数量的活跃路径。

-n

mc-cmd

Optional

在自动退出前返回的状态请求数量。 使用 0 表示返回不限数量的状态结果。

如果未指定,结果会按指定间隔持续刷新,直到手动退出。

--nodes

mc-cmd

Optional

返回指定节点的 scanner 状态信息。 使用逗号分隔列表指定多个节点。

全局标志

此命令支持 全局标志 中的任意选项。

8 - mc admin user add

语法

mc admin user add 命令会在目标 MinIO 部署中添加一个新的 MinIO 用户

要管理外部身份提供商用户,请参见 OIDCAD/LDAP

以下命令会在 myminio MinIO 部署上创建一个新用户 newuser

mc admin user add myminio newuser newusersecret

该命令语法如下:

mc [GLOBALFLAGS] admin user add        \
                            ALIAS      \
                            ACCESSKEY  \
                            SECRETKEY
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ACCESSKEY

mc-cmd

Required

用于唯一标识新用户的访问密钥,类似于用户名。

ALIAS

mc-cmd

Required

已配置 MinIO 部署的 alias,用于在该部署上创建新用户。

SECRETKEY

mc-cmd

Required

新用户的 secret key。创建 secret key 时请参考以下建议:

  • 密钥应为 唯一
  • 密钥应足够 (超过 12 个字符)
  • 密钥应具备 复杂性(混合使用字符、数字和符号)

全局标志

此命令支持 全局标志 中的任意选项。

示例

创建新用户

使用 mc admin user add 在 MinIO 部署上创建用户:

   mc admin user add ALIAS ACCESSKEY SECRETKEY
  • ALIAS 替换为 MinIO 部署的 alias
  • ACCESSKEY 替换为该用户的 access key。
  • SECRETKEY 替换为该用户的 secret key。 MinIO 提供任何在设置后检索 secret key 的方法。

请为 ACCESSKEYSECRETKEY 都指定唯一、随机且足够长的字符串。 组织在生成用于 access key 或 secret key 的值时,可能存在特定的内部或监管要求。

行为

新用户默认没有策略

新创建的用户默认 没有 任何策略,因此无法在 MinIO 部署上执行任何操作。 要配置用户的已分配策略,你可以执行以下一项或两项操作:

有关 MinIO 用户和组的更多信息,请参见 用户管理组管理。 有关 MinIO 策略的更多信息,请参见 MinIO Policy Based Access Control

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

9 - mc admin user svcacct add

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,请使用 mc admin accesskey create 命令为内置 MinIO IDP 用户添加访问密钥。

如需为 AD/LDAP 用户添加访问密钥,请使用 mc idp ldap accesskey create 命令。

语法

mc admin user svcacct add 命令为现有 MinIO 或 AD/LDAP 用户添加新的访问密钥。

说明

OpenID Connect 用户的访问密钥

要为 OpenID Connect 用户 生成服务账户访问密钥,请使用 MinIO Console

以下命令会创建一个与现有 MinIO 用户关联的新访问密钥:

mc admin user svcacct add                       \
   --access-key "myuserserviceaccount"          \
   --secret-key "myuserserviceaccountpassword"  \
   --policy "/path/to/policy.json"              \
   myminio myuser

命令会返回该新账号的访问密钥和秘密密钥。

命令语法如下:

mc [GLOBALFLAGS] admin user svcacct add             \
                                    [--access-key]  \
                                    [--secret-key]  \
                                    [--policy]      \
                                    [--comment]     \
                                    ALIAS           \
                                    USER
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

USER

mc-cmd

Required

MinIO 要为其添加新访问密钥的用户名。

--access-key

mc-cmd

Optional

用作此账号访问密钥的字符串。 省略时,MinIO 会自动生成一个 20 个字符的随机值。

Access Key 名称在所有用户之间 必须 唯一。

--comment

mc-cmd

Optional

说明

变更: RELEASE.2023-05-18T16-59-00Z

已由 --description--name 替代。

最初在 RELEASE.2023-01-28T20-29-38Z 版本中引入。

此选项已移除。 请改用 --description--name

--description

mc-cmd

Optional

说明

新增: RELEASE.2023-05-18T16-59-00Z

为服务账户添加描述。 例如,可以说明该服务账户存在的原因。

--expiry

mc-cmd

Optional

说明

新增: RELEASE.2023-05-30T22-41-38Z

为服务账户设置过期日期。 该日期必须是未来时间,不能设置已经过去的过期日期。

允许的日期和时间格式:

  • 2023-06-24
  • 2023-06-24T10:00
  • 2023-06-24T10:00:00
  • 2023-06-24T10:00:00Z
  • 2023-06-24T10:00:00-07:00
--name

mc-cmd

Optional

说明

新增: RELEASE.2023-05-18T16-59-00Z

为服务账户添加一个人类可读的名称。

--policy

mc-cmd

Optional

要附加到新访问密钥的 策略文档 路径,最大大小为 2048 个字符。 附加的策略不能授予父用户策略未明确允许的任何操作或资源访问权限。

--secret-key

mc-cmd

Optional

与新账号关联的秘密密钥。 省略时,MinIO 会自动生成一个 40 字符的随机值。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

10 - mc admin accesskey disable

语法

mc admin accesskey disable 命令用于禁用 MinIO IDP 用户的现有访问密钥。

以下命令会禁用指定的访问密钥:

mc admin accesskey disable myminio myuserserviceaccount

该命令的语法如下:

mc [GLOBALFLAGS] admin accesskey disable         \
                                 ALIAS           \
                                 SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要禁用的访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

11 - mc admin cluster bucket

说明

说明

新增: RELEASE.2022-06-17T02-52-50Z

mc admin cluster bucket 命令及其子命令提供了用于手动导入和导出 MinIO 存储桶元数据的工具。

这些元数据包含与 生命周期管理规则 等功能相关的配置。 你可以将这些元数据作为存储桶配置的快照,用于后续恢复,例如作为 BC/DR 或备份/恢复操作的一部分。

你可以将此命令用于单个存储桶, 用于 MinIO 部署中的所有存储桶。 如需将部署中的所有存储桶自动同步到远端站点,请使用 站点复制

mc admin cluster bucket 命令包含以下子命令:

子命令

说明

import

mc admin cluster bucket import 命令用于导入由 mc admin cluster bucket export 命令生成的存储桶元数据。

export

mc admin cluster bucket export 命令会导出存储桶元数据,以供 mc admin cluster bucket import 命令使用。

12 - mc admin cluster bucket export

描述

说明

新增: RELEASE.2022-06-17T02-52-50Z

mc admin cluster bucket export 命令会导出存储桶元数据,以供 mc admin cluster bucket import 命令使用。

你可以使用此命令手动备份指定 MinIO 存储桶的元数据。 该命令始终将输出保存为 cluster-metadata.zip

如果你仅将部署指定为目标,此命令会备份目标部署上所有存储桶的元数据。

以下命令会导出 myminio 部署的所有存储桶元数据。

mc admin cluster bucket export myminio

该命令使用以下语法:

mc [GLOBALFLAGS] admin cluster bucket export  \
                                      ALIAS[/BUCKET]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

BUCKET

mc-cmd

Optional

要导出元数据的存储桶。

全局标志

此命令支持 全局标志 中的任意选项。

13 - mc admin cluster iam export

描述

说明

新增: RELEASE.2022-06-26T18-51-48Z

mc admin cluster iam export 命令导出 IAM 元数据,以供 mc admin cluster iam import 命令使用。

该命令将输出保存为 ALIAS-iam-metadata.zip,其中 ALIAS 是 MinIO 部署的 alias

以下命令导出 myminio 部署的全部 IAM 元数据。

mc admin cluster iam export myminio

命令语法如下:

mc [GLOBALFLAGS] admin cluster iam export ALIAS  \
                 [--output, -o <string>]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

RELEASE.2023-05-04T18-10-16Z 开始,mc admin cluster iam export 支持以尾随正斜杠结尾的别名 ALIAS/。 在此版本之前,提供尾随正斜杠会导致命令执行失败。

参数

ALIAS

mc-cmd

Required

要导出 IAM 元数据的 MinIO 部署 alias

--output, --o

mc-cmd

Optional

指定导出 IAM 数据时使用的自定义文件名和路径。

全局标志

此命令支持 全局标志 中的任意选项。

示例

将集群的全部 IAM 元数据下载到 ZIP 文件

以下命令下载别名为 myminio 的集群全部 IAM 元数据,并将其保存到 ZIP 文件中。

mc admin cluster iam export myminio

ZIP 文件命名为 <alias>-iam-info.zip,其中 <alias> 是集群别名。 在上述示例中,文件名为 myminio-iam-info.zip

该文件位于当前活动目录中。

下载集群的全部 IAM 元数据并指定 ZIP 文件名称和路径

以下命令下载别名为 myminio 的集群全部 IAM 元数据,并将其保存为 /tmp/myminio-iam.zip ZIP 文件。

mc admin cluster iam export myminio --output /tmp/myminio-iam.zip

14 - mc admin policy create

Syntax

在目标 MinIO 部署上创建一个新策略。

MinIO 部署默认包含以下 内置策略

假设以下 JSON 策略文档保存在名为 /tmp/listmybuckets.json 的文件中:

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "s3:ListAllMyBuckets"
         ],
         "Resource": [
            "arn:aws:s3:::*"
         ]
      }
   ]
}

以下命令使用文件 /tmp/listmybuckets.json 中的策略,在 alias myminio 上创建一个名为 listmybuckets 的新策略。

mc admin policy create myminio listmybuckets /tmp/listmybuckets.json

该命令的语法如下:

mc admin policy create     \
                TARGET     \
                POLICYNAME \
                POLICYPATH
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

Parameters

mc admin policy create 命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,用于向该部署添加新策略。

POLICYNAME

mc-cmd

要添加的策略名称。

指定已有策略的名称会覆盖 TARGET MinIO 部署上的该策略。

POLICYPATH

mc-cmd

要添加的策略文件路径。 该文件 必须 为 JSON 格式,使用 IAM 兼容语法,且长度不超过 2048 个字符。

Global Flags

此命令支持 全局标志 中的任意选项。

Examples

在别名为 myminio 的部署上,使用 /tmp/writeonly.json 的 JSON 文件创建一个名为 writeonly 的新策略。

mc admin policy create myminio writeonly /tmp/writeonly.json

15 - mc admin prometheus metrics

说明

mc admin prometheus metrics 命令用于输出集群的 Prometheus 指标。

输出还包含每个指标的附加信息,例如其值类型是 counter 还是 gauge

有关将 MinIO 与 Prometheus 配合使用的完整文档,请参阅 How to monitor MinIO server with Prometheus

从 MinIO 服务端 RELEASE.2024-07-15T19-02-30Z 和 MinIO 客户端 RELEASE.2024-07-11T18-01-28Z 开始,metrics version 3 (v3) 提供了额外的端点和指标。 要输出 v3 指标,请使用 --api_version v3 选项。

MinIO 建议新部署使用 version 3 (v3)。 现有部署可以继续使用 metrics version 2

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

以下命令输出 alias myminio 对应部署的集群指标:

mc admin prometheus metrics myminio cluster

命令语法如下:

mc [GLOBALFLAGS] admin prometheus metrics  \
                                  ALIAS                                           \
                                  [TYPE]                                          \
                                  [--api_version v3]                              \
                                  [--bucket <bucket name>]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

已配置 MinIO 部署的 alias,命令将输出该部署的指标。

--api-version

mc-cmd

Optional

要输出 version 3 (v3) 指标,请添加 --api-version v3 参数。 v3 是唯一接受的值。

省略 --api-version 则输出 version 2 (v2) 指标。

--bucket

mc-cmd

Optional

需要 --api-version。 对于返回存储桶级指标的 v3 指标类型,需指定存储桶名称。

--bucket 适用于以下 v3 指标类型:

  • api
  • replication

以下示例输出存储桶 mybucket 的 API 指标:

mc admin prometheus metrics ALIAS api --bucket mybucket --api-version v3
TYPE

mc-cmd

Optional

要输出的指标类型。

metrics version 3 的有效值为:

  • api
  • audit
  • cluster
  • debug
  • ilm
  • logger
  • notification
  • replication
  • scanner
  • system

未指定时,v3 命令返回所有指标。

metrics version 2 的有效值为:

  • bucket
  • cluster
  • node
  • resource

未指定时,v2 命令返回集群指标。 集群指标包含部分节点指标的汇总值。

全局标志

此命令支持 全局标志 中的任意选项。

示例

输出 v3 指标

使用 mc admin prometheus metrics --api-version v3 输出某个 MinIO 部署中所有可用的 v3 指标及其当前值:

mc admin prometheus metrics ALIAS --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

要输出特定类型的指标,请添加 TYPE。 以下命令输出某个部署的全部 scanner 指标:

mc admin prometheus metrics ALIAS scanner --api-version v3

输出 v3 API 或存储桶复制指标

某些 v3 指标类型接受 --bucket 参数,用于指定要输出指标的存储桶。 以下示例输出存储桶 mybucket 的 v3 replication 指标:

mc admin prometheus metrics ALIAS replication --bucket mybucket --api-version v3
  • ALIAS 替换为 MinIO 部署的 alias

要输出该存储桶的 API 指标,请将 replication 替换为 api

输出 v2 集群指标

默认情况下,mc admin prometheus metrics 输出 v2 集群指标:

mc admin prometheus metrics ALIAS
  • ALIAS 替换为 MinIO 部署的 alias

输出其他类型的 v2 指标

要输出另一种 v2 指标类型,请指定所需的 TYPE。 以下示例输出 v2 bucket 指标:

mc admin prometheus metrics ALIAS bucket

可接受的值为 bucketclusternoderesource

16 - mc admin scanner trace

说明

mc admin scanner trace 命令会显示目标 MinIO 部署上发生的 scanner 相关 API 操作。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

以下示例返回 myminio 部署上与 scanner 相关的 API 操作列表。

mc admin scanner trace myminio

命令语法如下:

mc admin scanner trace ALIAS
                       [--filter-request]            \
                       [--filter-response]           \
                       [--filter-size <value>]       \
                       [--funcname <value>]          \
                       [--node <value>]              \
                       [--path <value>]              \
                       [--response-duration <value>] \
                       [--verbose, -v]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

要显示其 scanner API 操作的 MinIO 部署的 alias

--filter-request

mc-cmd

Optional

跟踪请求大小大于指定 --filter-size 值的 scanner 操作或调用。

必须--filter-size 标志配合使用。

--filter-response

mc-cmd

Optional

跟踪响应大小大于指定 --filter-size 值的 scanner 操作或调用。

必须--filter-size 标志配合使用。

--filter-size

mc-cmd

Optional

将输出过滤为请求大小或响应大小大于指定大小的条目。

必须与 --filter-request--filter-response 标志之一配合使用。

有效单位包括:

后缀 单位大小
k KB(Kilobyte,1000 Bytes)
m MB(Megabyte,1000 Kilobytes)
g GB(Gigabyte,1000 Megabytes)
t TB(Terabyte,1000 Gigabytes)
ki KiB(Kibibyte,1024 Bytes)
mi MiB(Mebibyte,1024 Kibibytes)
gi GiB(Gibibyte,1024 Mebibytes)
ti TiB(Tebibyte,1024 Gibibytes)
--funcname

mc-cmd

Optional

返回与输入函数名对应的调用。

--node

mc-cmd

Optional

返回指定服务器的调用。

--path

mc-cmd

Optional

返回指定路径的调用。

--response-duration

mc-cmd

Optional

跟踪响应持续时间大于指定值的调用。

--verbose, -v

mc-cmd

Optional

返回详细输出。

全局标志

此命令支持 全局标志 中的任意选项。

示例

监控所有 scanner API 操作

使用 mc admin scanner trace 监控别名为 myminio 的 MinIO 部署上的 scanner API 操作:

mc admin scanner trace myminio

显示特定路径的 scanner 跟踪

使用 mc admin scanner trace 监控别名为 myminio 的部署上路径 my-bucket/my-prefix/* 的 API 操作:

mc admin scanner trace --path my-bucket/my-prefix/* myminio

显示 scanObject 函数的 scanner API 操作

监控 myminio 部署上 scanObject 函数的 scanner 活动:

mc admin scanner trace --funcname=scanner.ScanObject myminio

显示大于 1MB 的 scanner 操作请求

使用 mc admin scanner trace 监控 myminio 部署上大于 1MB 的请求:

mc admin scanner trace --filter-request --filter-size 1MB myminio

显示大于 1MB 的 scanner 操作响应

使用 mc admin scanner trace 监控较大的响应大小:

mc admin scanner trace --filter-response --filter-size 1MB myminio

显示持续超过五毫秒的 scanner 操作

使用 mc admin scanner trace 监控耗时较长的操作:

mc admin scanner trace --response-duration 5ms myminio

17 - mc admin user disable

语法

mc admin user disable 命令用于在目标 MinIO 部署上禁用 MinIO 用户

客户端不能使用该用户凭证向 MinIO 部署进行身份验证。 禁用用户 不会 将该用户从部署中移除。 使用 mc admin user enable 可在 MinIO 部署上启用已禁用的用户。

如需管理外部身份提供商用户,请参阅 OIDCAD/LDAP

以下命令会在 myminio MinIO 部署上禁用用户 myuser

mc admin user disable myminio myuser

该命令的语法如下:

mc [GLOBALFLAGS] admin user disable   \
                            ALIAS     \
                            USERNAME
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

要禁用用户所在 MinIO 部署的 alias

USERNAME

mc-cmd

Required

要禁用的用户名。

全局标志

此命令支持 全局标志 中的任意选项。

示例

禁用用户

使用 mc admin user disable 在 MinIO 部署上禁用用户。

mc admin user disable ALIAS USERNAME
  • ALIAS 替换为 MinIO 部署的 alias
  • USERNAME 替换为要禁用的用户名。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

18 - mc admin user svcacct disable

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,请使用 mc admin accesskey disable 命令禁用内置 MinIO IDP 用户的访问密钥。

如需禁用 AD/LDAP 用户的访问密钥,请使用 mc idp ldap accesskey disable 命令。

语法

mc admin user svcacct disable 命令用于禁用现有访问密钥。

以下命令会禁用指定的访问密钥:

mc admin user svcacct disable myminio myuserserviceaccount

命令语法如下:

mc [GLOBALFLAGS] admin user svcacct disable         \
                                    ALIAS           \
                                    SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要禁用的服务账户访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

19 - mc admin cluster iam

描述

说明

新增: RELEASE.2022-06-26T18-51-48Z

mc admin cluster iam 命令及其子命令提供了用于手动导入和导出 MinIO 身份与访问管理(IAM) 元数据的工具。

如需将部署中的所有 IAM 配置自动同步到远程站点,请使用 站点复制

mc admin cluster iam 命令包含以下子命令:

子命令

描述

import

mc admin cluster iam import 命令导入由 mc admin cluster iam export 命令创建的 IAM 元数据。

export

mc admin cluster iam export 命令导出 IAM 元数据,以供 mc admin cluster iam import 命令使用。

20 - mc admin policy detach

语法

MinIO 管理的用户或组 中移除一个或多个 IAM 策略。

必须且只能指定 --user--group 其中之一。

以下命令从别名为 myminio 的部署中为用户 james 解绑 readonly 策略。

mc admin policy detach myminio readonly --user james

该命令的语法如下:

mc admin policy detach TARGET                         \
                       POLICY                         \
                       [POLICY...]                    \
                       [--user USER | --group GROUP]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

警告

重要

此命令仅用于管理 MinIO 管理 用户的策略关联。

如需管理 OpenID 管理的用户策略,请参见 OpenID Connect 访问管理

如需从 Active Directory/LDAP 用户或组解绑策略,请使用 mc idp ldap policy detach

参数

mc admin policy detach 命令接受以下参数:

TARGET

mc-cmd

Required

已配置 MinIO 部署的 alias,其中包含你要解绑一个或多个策略的用户或组。

POLICY

mc-cmd

Required

要从用户或组解绑的策略名称。 你可以通过空格分隔多个策略名称,一次解绑多个策略。

MinIO 部署默认包含以下 内置策略

--user

mc-cmd

Optional

要解绑策略的身份用户名。 只能指定一个用户。

必须包含 --user--group 标志之一。 不能将 --user--group 标志同时使用。

--group

mc-cmd

Optional

要解绑策略的组名称。 只能指定一个组。

组内所有成员都会失去该组关联策略所授予的权限,除非这些权限也由用户所属的其他策略或组授予。

必须包含 --group--user 标志之一。 不能将 --group--user 标志同时使用。

全局标志

此命令支持 全局标志 中的任意选项。

示例

从别名为 myminio 的部署中为用户 james 解绑 readonly 策略。

mc admin policy detach myminio readonly --user james

从别名为 myminio 的部署中为组 legal 解绑 audit-policyacct-policy 策略。

mc admin policy detach myminio audit-policy acct-policy --group legal

21 - mc admin user accesskey edit

语法

mc admin accesskey edit 命令用于修改与指定用户关联的访问密钥配置。

该命令要求访问密钥至少有一个属性发生变更。 否则,命令会报错退出。

以下命令为 myminio 部署上的 myuserserviceaccount 访问密钥应用新的策略和 secret key:

mc admin accesskey edit                                             \
                   myminio myuserserviceaccount                     \
                   --secret-key "myuserserviceaccountnewsecretkey"  \
                   --policy "/path/to/new/policy.json"

命令语法如下:

mc [GLOBALFLAGS] admin accesskey edit                      \
                                 ALIAS                     \
                                 ACCESSKEY                 \
                                 [--description string]    \
                                 [--expiry-duration value] \
                                 [--expiry value]          \
                                 [--name string]           \
                                 [--policy path]           \
                                 [--secret-key string]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

ACCESSKEY

mc-cmd

Required

要修改的访问密钥。

--description

mc-cmd

Optional

为访问密钥添加或修改描述。 例如,可用于说明该访问密钥的用途。

--expiry

mc-cmd

Optional

设置或修改访问密钥的过期日期。 日期必须为未来时间,不能设置已过去的过期日期。

允许的日期和时间格式:

  • 2023-06-24
  • 2023-06-24T10:00
  • 2023-06-24T10:00:00
  • 2023-06-24T10:00:00Z
  • 2023-06-24T10:00:00-07:00

--expiry-duration 互斥。

--expiry-duration

mc-cmd

Optional

访问密钥保持有效的时长。 有效时间单位为 “ns”、”us”(或 “µs”)、”ms”、”s”、”m”、”h”。

若要让凭证在 30 天后过期,请使用:

--expiry-duration 720h

--expiry 互斥。

--name

mc-cmd

Optional

为访问密钥添加或修改一个便于识别的名称。

--policy

mc-cmd

Optional

要附加到新访问密钥的 策略文档 路径,最大长度为 2048 个字符。 附加策略不能授予父用户策略中未显式允许的任何操作或资源访问权限。

新策略会覆盖此前附加的任何策略。

--secret-key

mc-cmd

Optional

要与新访问密钥关联的 secret key。 会覆盖先前的 secret key。 使用该访问密钥的应用 必须 更新为新凭证,才能继续执行操作。

全局标志

此命令支持 全局标志 中的任意选项。

示例

修改访问密钥的 secret key

以下命令修改 myminio 部署上 myuseraccesskey 访问密钥的 secret key。

mc admin accesskey edit myminio/ myuseraccesskey --secret-key 'new-secret-key-change-me'

修改访问密钥的过期设置

以下命令修改 myminio 部署上 myuseraccesskey 访问密钥的过期值。

mc admin accesskey edit myminio/ myuseraccesskey --expiry-duration 24h

如果访问密钥已设置 --expiry,则不能再添加 --expiry-duration

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

22 - mc admin user enable

语法

mc admin user enable 命令用于在目标 MinIO 部署上启用 MinIO 用户

客户端只能使用已启用的用户向 MinIO 部署进行认证。 使用 mc admin user add 创建的用户默认处于启用状态。

要管理外部身份提供商用户,请参阅 OIDCAD/LDAP

以下命令在 myminio MinIO 部署上启用用户 myuser

mc admin user enable myminio myuser

该命令具有以下语法:

mc [GLOBALFLAGS] admin user enable    \
                            ALIAS     \
                            USERNAME
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

需要启用该用户的 MinIO 部署的 alias

USERNAME

mc-cmd

Required

要启用的用户名。

全局标志

此命令支持 全局标志 中的任意选项。

示例

启用用户

使用 mc admin user enable 在 MinIO 部署上启用用户。

mc admin user enable ALIAS USERNAME
  • ALIAS 替换为 MinIO 部署的 alias
  • USERNAME 替换为要启用的用户名。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

23 - mc admin user svcacct edit

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端 发布版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,请使用 mc admin accesskey edit 命令修改内置 MinIO IDP 用户的访问密钥。

如需修改 AD/LDAP 用户的访问密钥,请使用 mc idp ldap accesskey edit 命令。

语法

mc admin user svcacct edit 命令用于修改与指定用户关联的访问密钥配置。

以下命令为 myminio 部署上的 myuserserviceaccount 访问密钥应用新的策略和密钥:

mc admin user svcacct edit                                             \
                      --secret-key "myuserserviceaccountnewsecretkey"  \
                      --policy "/path/to/new/policy.json"              \
                      myminio myuserserviceaccount

该命令的语法如下:

mc [GLOBALFLAGS] admin user svcacct edit            \
                                    [--secret-key]  \
                                    [--policy]      \
                                    ALIAS           \
                                    SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要修改的服务账户。

--description

mc-cmd

Optional

说明

新增: RELEASE.2023-05-18T16-59-00Z

为服务账户添加描述。 例如,可以说明该服务账户存在的原因。

--expiry

mc-cmd

Optional

说明

新增: RELEASE.2023-05-30T22-41-38Z

为服务账户设置过期日期。 日期必须在未来,不能设置已经过去的过期日期。

允许的日期和时间格式:

  • 2023-06-24
  • 2023-06-24T10:00
  • 2023-06-24T10:00:00
  • 2023-06-24T10:00:00Z
  • 2023-06-24T10:00:00-07:00
--name

mc-cmd

Optional

说明

新增: RELEASE.2023-05-18T16-59-00Z

为服务账户添加一个便于识别的名称。

--policy

mc-cmd

Optional

要附加到新访问密钥的 policy document 路径,最大长度为 2048 个字符。 附加的策略不能授予父用户策略未明确允许的任何操作或资源访问权限。

新策略会覆盖此前已附加的任何策略。

--secret-key

mc-cmd

Optional

与新访问密钥关联的密钥。 会覆盖此前的密钥。 使用这些访问密钥的应用程序 必须 更新为新凭证,才能继续执行操作。

全局参数

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

24 - mc admin accesskey enable

语法

mc admin accesskey enable 命令用于启用现有访问密钥。

以下命令启用指定的访问密钥:

mc admin accesskey enable myminio myuserserviceaccount

该命令具有以下语法:

mc [GLOBALFLAGS] admin accesskey enable          \
                                 ALIAS           \
                                 SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要启用的访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

25 - mc admin config

说明

mc admin config 命令用于管理 minio 服务器的配置设置。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

示例

语法

mc admin config set

mc-cmd

在 MinIO 部署上设置 配置键。 由环境变量定义的配置会覆盖通过此命令定义的配置。

mc admin config get

mc-cmd

获取 MinIO 部署上通过 mc admin config set 创建的 配置键

mc admin config export

mc-cmd

导出通过 mc admin config set 创建的所有配置设置。

mc admin config history

mc-cmd

列出由 mc admin config 对配置键所做变更的历史记录。

由环境变量定义的配置不会显示在其中。

mc admin config import

mc-cmd

导入通过 mc admin config export 导出的配置设置。

mc admin config reset

mc-cmd

将配置重置为默认值。 在环境变量中定义的配置不受影响。

mc admin config restore

mc-cmd

将配置键的更改回滚到历史中的先前时间点。

不影响由环境变量定义的配置。

配置设置

可用配置设置列表请参见 设置概览

26 - mc admin policy entities

语法

列出目标 MinIO 部署中与策略、用户或组关联的实体。

说明

变更: RELEASE.2023-05-27T05-56-19Z

此命令仅返回 MinIO 管理的用户和组

如需列出与 Active Directory 或 LDAP(AD/LDAP)配置关联的实体,请使用 mc idp ldap policy entities

例如,你可以列出附加到某个策略的所有用户和组,或者列出附加到特定用户或组的所有策略。

以下命令返回别名为 myminio 的部署中与用户 bob 关联的策略列表。

mc admin policy entities myminio/ --user bob

该命令语法如下:

mc admin policy entities         \
                TARGET           \
                [--user value]   \
                [--group value]  \
                [--policy value]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

警告

重要

此命令仅用于管理 MinIO 管理的 用户的策略关联。

如需管理 OpenID 管理用户的策略,请参阅 OpenID Connect 访问管理

如需查看 Active Directory/LDAP 用户或组的策略,请使用 mc idp ldap policy entities

参数

mc admin policy entities 命令接受以下参数:

TARGET

mc-cmd

Required

已配置 MinIO 部署的 alias,将在该部署上添加新策略。

--group

mc-cmd

Optional

要列出其附加策略的组身份名称。

你可以通过多次重复该标志来包含多个组。 命令会返回每个组及其关联实体列表。

--policy

mc-cmd

Optional

要列出其关联实体的策略名称。

你可以通过多次重复该标志来包含多个策略。 命令会返回每个策略及其所有关联实体列表。

--user

mc-cmd

Optional

要列出其附加策略的身份用户名。

你可以通过多次重复该标志来包含多个用户。 命令会返回每个用户及其关联策略列表。

全局标志

此命令支持 全局标志 中的任意选项。

示例

列出某个部署的所有实体及策略关联

以下命令列出别名为 myminio 的部署上所有策略及其关联的实体映射。

mc admin policy entities myminio/

列出与两个不同策略关联的实体

以下命令列出别名为 myminio 的部署上与策略 inteam-policymlteam-policy 关联的所有实体。

mc admin policy entities myminio/ --policy finteam-policy --policy mlteam-policy

列出与两个不同用户关联的策略

以下命令列出别名为 myminio 的部署上与用户 bobjames 关联的所有策略。

该命令先输出与 bob 关联的策略列表,再输出别名为 myminio 的部署中与 james 关联的策略列表。

mc admin policy entities myminio/ --user bob --user james

列出与两个不同组关联的策略

以下命令列出别名为 myminio 的部署上与组 auditorsaccounting 关联的所有策略。

该命令先输出与组 auditors 关联的策略列表,再输出别名为 myminio 的部署中与组 accounting 关联的策略列表。

mc admin policy entities play/ --group auditors --group accounting

列出与一个策略、一个组和一个用户关联的策略

以下命令列出别名为 myminio 的部署上与策略 finteam-policy、用户 bobfisher 和组 consulting 关联的所有策略。

该命令先输出与策略 finteam-policy 关联的组和用户列表,然后列出与用户 bobfisher 关联的策略,最后列出别名为 myminio 的部署中与组 consulting 关联的策略。

mc admin policy entities play/ \
           --policy finteam-policy --user bobfisher --group consulting

输出

命令输出类似如下:

Query time: 2023-04-04T20:39:27Z
  Policy -> Entity Mappings:
    Policy: finteam-policy
      User Mappings:
        bobfisher
    Policy: diagnostics
      User Mappings:
        james
        bobfisher
        marcia
      Group Mappings:
        consulting
        auditors
  User -> Policy Mappings:
    User: bobfisher
      ALLOW_PUBLIC_READ
      finteam-policy
      diagnostics
      readonly
      readwrite
      writeonly

27 - mc admin user info

语法

mc admin user info 命令返回目标 MinIO 部署中某个 MinIO 用户 的详细信息。

如需管理外部身份提供商用户,请参见 OIDCAD/LDAP

以下命令返回 myminio MinIO 部署中用户 myuser 的详细信息:

mc admin user info myminio myuser

该命令语法如下:

mc [GLOBALFLAGS] admin user info      \
                            ALIAS     \
                            USERNAME
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

用于获取用户信息的已配置 MinIO 部署的 alias

USERNAME

mc-cmd

要查询信息的用户名。

全局标志

此命令支持 全局标志 中的任意选项。

说明

变更: RELEASE.2023-05-26T23-31-54Z

mc admin user info --json 输出包含用户通过组成员关系继承的策略,位于 memberOf 中。

示例

查看用户详细信息

使用 mc admin user info 查看 MinIO 部署中某个用户的详细信息:

mc admin user info ALIAS USERNAME
  • ALIAS 替换为 MinIO 部署的 alias
  • USERNAME 替换为要显示信息的用户名。

对于 MinIO 内部身份提供商 (IDP),输出类似如下:

AccessKey: miniouser
Status: enabled
PolicyName:
MemberOf: []
Authentication: builtin (miniouser)

对于 LDAP 等 第三方 身份服务,输出类似如下:

AccessKey: uid=dillon,ou=people,ou=swengg,dc=min,dc=io
Status:
PolicyName: consoleAdmin
MemberOf: []
Authentication: ldap/localhost:1389 (uid=dillon,ou=people,ou=swengg,dc=min,dc=io)

查看来自组成员关系的策略

mc admin user info--json 配合使用,可查看用户从其 组成员关系 继承的策略:

mc admin user info ALIAS USERNAME --json
  • ALIAS 替换为 MinIO 部署的 alias
  • USERNAME 替换为要显示信息的用户名。

输出中的 memberOf 属性包含该用户所属组的列表,以及附加到各组的策略。 输出类似如下:

{
 "status": "success",
 "accessKey": "myuser",
 "userStatus": "enabled",
 "memberOf": [
  {
   "name": "testingGroup",
   "policies": [
    "testingGroupPolicy"
   ]
 "authentication": builtin (myuser)
  }
 ]
}

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

28 - mc admin user svcacct enable

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端 发布版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,使用 mc admin accesskey enable 命令为内置 MinIO IDP 用户启用访问密钥。

如需为 AD/LDAP 用户启用访问密钥,请使用 mc idp ldap accesskey enable 命令。

语法

mc admin user svcacct enable 命令用于启用现有访问密钥。

以下命令启用指定的访问密钥:

mc admin user svcacct enable myminio myuserserviceaccount

该命令的语法如下:

mc [GLOBALFLAGS] admin user svcacct enable          \
                                    ALIAS           \
                                    SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要启用的服务账户访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

29 - mc admin accesskey info

语法

mc admin accesskey info 命令返回指定 access key(s) 的描述信息。

描述输出会在可用时包含以下详细信息:

  • Access Key
  • 指定访问密钥的父用户
  • 访问密钥状态(onoff
  • 策略(单个或多个)
  • 注释
  • 过期时间

以下命令返回指定访问密钥的信息:

mc admin accesskey info myminio myuseraccesskey

命令语法如下:

mc [GLOBALFLAGS] admin accesskey info      \
                                 ALIAS     \
                                 ACCESSKEY
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

ACCESSKEY

mc-cmd

Required

要显示的访问密钥。

通过空格分隔多个访问密钥,可返回多个访问密钥的信息。

全局标志

此命令支持 全局标志 中的任意选项。

示例

显示访问密钥详细信息

使用 mc admin accesskey info 显示 MinIO 部署中某个访问密钥的详细信息:

   mc admin accesskey info myminio myaccesskey
  • myminio 替换为 MinIO 部署的 alias
  • myaccesskey 替换为要显示信息的访问密钥。 如需列出多个密钥,请使用空格分隔。

输出类似如下:

AccessKey: myuserserviceaccount
ParentUser: myuser
Status: on
Comment:
Policy: implied
Expiration: no-expiry

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

30 - mc admin decommission

语法

mc admin decommission 命令用于启动 MinIO 服务器池s 的下线流程。下线流程适用于移除较旧的服务器池,这些服务器池的硬件能力或性能已不再满足要求, 或相较部署中的其他池表现不足。MinIO 会根据每个池可用空闲空间的比例,自动将数据从被下线 的池迁移到部署中其余的池。

有关服务器池下线的完整操作流程,请参阅 退役 服务器池

说明

下线是永久性的

一旦 MinIO 开始下线某个池,就会将该池标记为 永久 非活动状态(“draining”)。 取消或以其他方式中断下线流程都 不会 将该池恢复为活动状态。

下线是一项重要的管理操作,规划和执行都需要谨慎处理,不是轻量或“日常”任务。

MinIO SUBNET 用户可以 log in 并创建与下线相关的新 issue。通过 SUBNET 与 MinIO Engineering 协同可提高下线成功率,包括性能测试和健康诊断。

社区用户可在 MinIO Community Slack 寻求支持。社区支持仅为 best-effort,不提供响应 SLA。

mc admin [GLOBALFLAGS] decommission start|status|cancel ALIAS TARGET

参数

start

mc-cmd

必需 启动 TARGET 指定服务器池的下线流程。

必须指定 TARGET

status

mc-cmd

必需 返回指定 ALIAS 上所有服务器池的下线状态:

  • Active - 该池处于活动状态,且未计划下线。
  • Draining - 该池当前正在下线。
  • Draining (Failed) - 下线流程失败,需要手动重启流程。
  • Draining (Cancelled) - 下线流程已被手动取消。

如果命令包含 TARGET,则在下线进行中时, 命令输出会包含数据迁移速率。

cancel

mc-cmd

必需 取消 TARGET 指定池上的进行中下线流程。

必须指定 TARGET

取消下线流程不会使该池恢复为活动状态。最终仍必须完成下线流程并将该池从部署中移除。 可以再次对该池运行 mc admin decommission start 以恢复流程。

ALIAS

mc-cmd

必需 要启动下线流程的 MinIO 部署的 alias

TARGET

mc-cmd

命令所操作服务器池的完整描述。例如:

https://minio-{01...04}.example.net:9000/mnt/disk{1...4}

全局标志

此命令支持 全局标志 中的任意选项。

示例

有关服务器池下线的完整操作流程,请参阅 退役 服务器池

31 - mc admin policy info

语法

如果目标 MinIO 部署上存在指定策略,则以 JSON 格式返回该策略。

以下命令显示 alias myminiowriteonly 策略的内容。

 mc admin policy info myminio writeonly

该命令的语法如下:

mc admin policy info TARGET POLICYNAME
                     [--policy-file, -f <path>]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

mc admin policy info 命令接受以下参数:

TARGET

mc-cmd

Required

已配置 MinIO 部署的 alias,用于显示指定策略。

POLICYNAME

mc-cmd

Required

要显示其详细信息的策略名称。

--policy-file

mc-cmd

Optional

指定一个文件路径,用于写入指定策略的 JSON 内容。 如果该路径已存在,命令会用指定策略的内容覆盖已有文件。

全局标志

此命令支持 全局标志 中的任意选项。

示例

显示 alias myminiowriteonly 策略的内容。

mc admin policy info myminio writeonly

显示指定策略的信息,并将策略 JSON 内容写入 /tmp/policy.json。

mc admin policy info myminio writeonly --policy-file /tmp/policy.json

输出

该命令返回的输出类似如下:

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "s3:PutObject"
         ],
         "Resource": [
            "arn:aws:s3:::*"
         ]
      }
   ]
}

32 - mc admin user ls

语法

mc admin user ls 命令会列出目标 MinIO 部署上的所有 MinIO 用户

mc admin user list 命令与 mc admin user ls 功能等效。

mc admin user ls 不会 返回与用户关联的 access key 或 secret key。 使用 mc admin user info 可获取用户详细信息,包括用户的 access key。

要管理外部 Identity Provider 用户,请参阅 OIDCAD/LDAP

以下命令会列出 myminio MinIO 部署上的所有用户:

mc admin user ls myminio

该命令具有以下语法:

mc [GLOBALFLAGS] admin user list   \
                            ALIAS
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

已配置 MinIO 部署的 alias,命令将从该部署中列出用户。

全局参数

此命令支持 全局标志 中的任意选项。

示例

列出可用用户

使用 mc admin user ls 列出 MinIO 部署上的所有用户:

mc admin user ls ALIAS

输出类似如下:

enabled    devadmin              readwrite
enabled    devtest               readonly
enabled    newuser

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

33 - mc admin user svcacct info

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 开始,请使用 mc admin accesskey info 命令显示内置 MinIO IDP 用户的 access key 信息。

对于 AD/LDAP 用户的 access key,请使用 mc idp ldap accesskey info 命令。

语法

mc admin user svcacct info 命令返回指定 access key 的描述信息。

在 MinIO 中,“Access Keys” 与 “Service Accounts” 功能等效,并取代了后者这一概念。

描述输出在可用时包含以下详细信息:

  • Access Key
  • 指定 access key 的父用户
  • access key 状态(onoff
  • 策略(单个或多个)
  • 注释
  • 过期时间

使用 --policy 查看附加的策略。

以下命令返回指定 access key 的信息:

mc admin user svcacct info myminio myuseraccesskey

该命令语法如下:

mc [GLOBALFLAGS] admin user svcacct info           \
                                    [--policy]     \
                                    ALIAS          \
                                    ACCESSKEY
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

ACCESSKEY

mc-cmd

Required

要显示的 service account access key。

--policy

mc-cmd

Optional

显示附加到指定 service account 的策略。

全局标志

此命令支持 全局标志 中的任意选项。

示例

显示 Service Account 详情

使用 mc admin user svcacct info 显示 MinIO 部署上某个 service account 的详细信息:

   mc admin user svcacct info ALIAS ACCESSKEY
  • ALIAS 替换为 MinIO 部署的 alias
  • ACCESSKEY 替换为 service account access key。

输出类似如下:

AccessKey: myuserserviceaccount
ParentUser: myuser
Status: on
Comment:
Policy: implied
Expiration: no-expiry

显示 Service Account 策略详情

使用 mc admin user svcacct info 显示附加到 service account 的策略:

   mc admin user svcacct info --policy ALIAS ACCESSKEY
  • ALIAS 替换为 MinIO 部署的 alias
  • ACCESSKEY 替换为 service account access key。

输出类似如下:

{
 "Version": "2012-10-17",
 "Statement": [
  {
   "Effect": "Allow",
   "Action": [
    "s3:*"
   ],
   "Resource": [
    "arn:aws:s3:::*"
   ]
  }
 ]
}

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

34 - mc admin accesskey ls

语法

mc admin accesskey ls 命令列出 MinIO 部署管理的用户、访问密钥或临时 security token service 密钥。

mc admin accesskey list 别名与 mc admin accesskey ls 功能等效。

以下命令列出别名为 myminio 的部署中,用户名为 admin1 的用户关联的所有访问密钥:

mc admin accesskey ls myminio admin1

输出如下所示:

   Access Key        | Expiry
5XF3ZHNZK6FBDWH9JMLX | 2023-06-24 07:00:00 +0000 UTC
F4V2BBUZSWY7UG96ED70 | 2023-12-24 18:00:00 +0000 UTC
FZVSEZ8NM9JRBEQZ7B8Q | no-expiry
HOXGL8ON3RG0IKYCHCUD | no-expiry

该命令使用以下语法:

mc [GLOBALFLAGS] admin accesskey ls             \
                                 ALIAS          \
                                 [USER]         \
                                 [--all]        \
                                 [--self]       \
                                 [--temp-only]  \
                                 [--users-only]
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

USER

mc-cmd

Optional

要显示其访问密钥的用户名称。 多个用户名之间使用空格分隔。

--all

mc-cmd

Optional

列出所有用户及其关联的任意访问密钥或临时 STS 密钥。 需要具有该部署的管理员权限。

此标志与该命令的其他可用标志互斥。

--svcacc-only

mc-cmd

Optional

列出部署上的临时 Security Token Service (STS) keys

此标志与该命令的其他可用标志互斥。

--self

mc-cmd

Optional

列出当前已认证用户的访问密钥和 STS 密钥。

此标志与该命令的其他可用标志互斥。

--temp-only

mc-cmd

Optional

列出用户及其访问密钥。 仅返回已关联访问密钥的用户。

运行命令的用户必须具有管理员权限才能使用此标志。

此标志与该命令的其他可用标志互斥。

--users-only

mc-cmd

Optional

列出该部署管理的 MinIO 用户。 与 --all 标志配合使用可列出部署上的所有用户。

全局标志

此命令支持 全局标志 中的任意选项。

示例

列出所有内置用户及其关联访问密钥

以下命令列出别名为 myminio 的 MinIO 部署所管理的所有用户,以及其关联的任意访问密钥或临时 STS 令牌。

mc admin accesskey list myminio/ --all

返回当前已认证用户的访问密钥列表

以下命令列出 myminio 部署中与当前已认证用户关联的访问密钥或临时 STS 令牌。

mc admin accesskey list myminio/ --self

列出由部署创建并管理的所有用户

以下命令返回当前部署上的所有用户列表。 该列表仅包含由 MinIO IDP 管理的用户,不包含通过 OpenID 或 Active Directory/LDAP 等协议由第三方工具管理的用户。

mc admin accesskey ls myminio/ --all --users-only

返回与用户 miniouser1miniouser2 关联的访问密钥列表

以下命令返回 myminio 部署上这两个用户的访问密钥列表。

mc admin accesskey ls myminio/ miniouser1 miniouser2

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

35 - mc admin group

说明

mc admin group 命令用于管理 MinIO 部署上的组。

用户 的集合。每个组都可以分配一个或多个 策略,用于明确列出允许或拒绝组成员访问的 操作和资源。对于具有相同访问模式和工作负载的用户,组提供了一种 简化的共享权限管理方式。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

组与基于策略的访问控制

MinIO 使用 基于策略的访问控制 (PBAC) 对已成功在部署上 认证 的用户执行 授权。每条策略都包含规则,用于规定该部署上 允许或拒绝的操作/资源。可以为一个组分配一个或多个 策略。属于该组的用户会继承该组已分配的策略。用户的 总权限集合包括其显式分配的策略,以及 通过组成员关系继承的策略。

新创建的组默认 包含任何策略。要配置组的已分配策略,请使用 mc admin policy attach 命令。

有关 MinIO 用户和组的更多信息,请参见 用户管理组管理。有关 MinIO 策略的更多信息, 请参见 MinIO Policy Based Access Control

说明

Deny 会覆盖 Allow

MinIO 遵循 IAM 标准:在同一操作或资源上,Deny 规则会覆盖 Allow 规则。 例如,如果某个用户显式分配的策略对某个操作/资源包含 Allow 规则, 而该用户所属的某个组所分配策略对同一操作/资源包含 Deny 规则, 则 MinIO 只会应用 Deny 规则。

有关 IAM 策略评估逻辑的更多信息,请参见 IAM 文档中的 Determining Whether a Request is Allowed or Denied Within an Account

示例

创建新组

使用 mc admin group add 在兼容 S3 的主机上创建新组:

mc admin group add ALIAS GROUPNAME MEMBER [MEMBER...]
  • ALIAS 替换为兼容 S3 主机的 alias
  • GROUPNAME 替换为要创建的 组名。
  • MEMBER 替换为 S3 主机上 至少 一个 用户。多个成员可按列表方式指定: MEMBER1 MEMBER2 MEMBER3

列出可用组

使用 mc admin group ls 列出兼容 S3 主机上的所有组:

mc admin group ls ALIAS

查看组详情

使用 mc admin group info 查看兼容 S3 主机上的组详细信息:

mc admin group info ALIAS GROUPNAME

删除组

使用 mc admin group rm 从兼容 S3 主机删除组:

mc admin group rm ALIAS GROUPNAME

禁用组

使用 mc admin group disable 禁用兼容 S3 主机上的组:

mc admin group disable ALIAS GROUPNAME

启用组

使用 mc admin group enable 启用兼容 S3 主机上的组:

mc admin group enable ALIAS GROUPNAME

快速参考

mc admin group add TARGET GROUPNAME MEMBERS

将用户添加到 MinIO 部署上的组。如果组不存在,则创建该组。

mc admin group info TARGET GROUPNAME

返回 MinIO 部署上某个组的详细信息。

mc admin group ls TARGET

返回 MinIO 部署上所有组的列表。

mc admin group rm TARGET GROUPNAME

删除 MinIO 部署上的组。

mc admin group enable TARGET GROUPNAME

启用 MinIO 部署上的组。用户只能继承已启用组分配的 策略

mc admin group disable TARGET GROUPNAME

禁用 MinIO 部署上的组。用户不能继承已禁用组分配的 策略

语法

mc admin group add

mc-cmd

将现有用户添加到组中。如果组不存在,该命令会创建组。 命令语法如下:

mc admin group add TARGET GROUPNAME MEMBERS

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,命令会在该部署上 向新建或现有组添加用户

GROUPNAME

mc-cmd

组名。如果组尚不存在,该命令会创建组。可使用 mc admin group ls 查看部署上的现有组。

组名不能包含 =(等号)或 ,(逗号)字符。

MEMBERS

mc-cmd

要添加到组中的用户名。

该用户 必须 存在于 TARGET MinIO 部署上。可使用 mc admin user ls 查看部署上的可用 用户。

mc admin group info

mc-cmd

返回目标部署上该组的详细信息,例如组内所有 用户 以及分配的 策略。命令语法如下:

mc admin group info TARGET GROUPNAME

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,用于从该部署中 获取组信息。

GROUPNAME

mc-cmd

组名。

mc admin group ls, list

mc-cmd

列出目标 MinIO 部署上的所有组。命令语法如下:

mc admin group ls TARGET

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,用于从该部署中 获取组列表。

mc admin group rm, remove

mc-cmd

删除目标 MinIO 部署上的组。删除组 不会 删除该组中的任何成员用户。请使用 mc admin user rm 从组中移除用户。

命令语法如下:

mc admin group rm TARGET GROUPNAME

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,命令会在该部署上 删除组。

GROUPNAME

mc-cmd

要删除的组名。

mc admin group enable

mc-cmd

启用目标 MinIO 部署上的组。用户只能从已启用组继承 策略。 组在创建时默认处于启用状态。命令语法如下:

mc admin group enable TARGET GROUPNAME

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,命令会在该部署上 启用组。

GROUPNAME

mc-cmd

要启用的组名。

mc admin group disable

mc-cmd

禁用目标 MinIO 部署上的组。用户不能从已禁用组继承 策略。命令语法如下:

mc admin group disable TARGET GROUPNAME

该命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,命令会在该部署上 禁用组。

GROUPNAME

mc-cmd

要禁用的组名。

36 - mc admin policy ls

语法

列出目标 MinIO 部署上的所有策略。

mc admin policy list 命令与 mc admin policy ls 具有等效功能。

以下命令显示 alias play 上当前存在的策略列表。

mc admin policy ls play

该命令的语法如下:

mc admin policy ls TARGET
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

mc admin policy ls 命令接受以下参数:

TARGET

mc-cmd

已配置 MinIO 部署的 alias,命令将从该部署列出可用策略。

全局标志

此命令支持 全局标志 中的任意选项。

示例

列出别名为 myminio 的部署上存在的策略。

mc admin policy ls myminio

输出

该命令返回的输出类似如下:

readwrite
writeonly

37 - mc admin user rm

语法

mc admin user rm 命令用于在目标 MinIO 部署上移除 MinIO 用户

mc admin user remove 命令与 mc admin user rm 的功能等效。

要管理外部身份提供商用户,请参阅 OIDCAD/LDAP

以下命令会在 myminio MinIO 部署上移除用户 myuser

mc admin user rm myminio myuser

在目标 MinIO 部署上移除用户。

命令语法如下:

mc [GLOBALFLAGS] admin user remove    \
                            ALIAS     \
                            USERNAME
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

已配置 MinIO 部署的 alias,该部署中包含要移除的用户。

USERNAME

mc-cmd

Required

要移除的用户名。

全局标志

此命令支持 全局标志 中的任意选项。

示例

移除用户

使用 mc admin user rm 从 MinIO 部署中移除用户:

mc admin user rm ALIAS USERNAME
  • ALIAS 替换为 MinIO 部署的 alias
  • USERNAME 替换为要移除的用户名。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

38 - mc admin user svcacct ls

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,请使用 mc admin accesskey ls 命令列出 MinIO 内置 IDP 用户的访问密钥。

对于 AD/LDAP 用户的访问密钥,请使用 mc idp ldap accesskey ls 命令。

语法

mc admin user svcacct ls 命令列出与指定用户关联的所有访问密钥。

mc admin user svcacct list 别名与 mc admin user svcacct ls 具有等效功能。

以下命令列出用户名为 admin1 的用户关联的所有访问密钥:

mc admin user svcacct ls myminio admin1

输出如下所示:

   Access Key        | Expiry
5XF3ZHNZK6FBDWH9JMLX | 2023-06-24 07:00:00 +0000 UTC
F4V2BBUZSWY7UG96ED70 | 2023-12-24 18:00:00 +0000 UTC
FZVSEZ8NM9JRBEQZ7B8Q | no-expiry
HOXGL8ON3RG0IKYCHCUD | no-expiry
说明

新增: RELEASE.2023-05-26T23-31-54Z

访问密钥列表包含到期时间;对于永不过期的密钥,显示 no-expiry

命令语法如下:

mc [GLOBALFLAGS] admin user svcacct ls   \
                                    ALIAS  \
                                    USER
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

USER

mc-cmd

Required

要列出其访问密钥的用户名。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

39 - mc admin accesskey rm

语法

mc admin accesskey rm 命令用于删除部署中与某个用户关联的访问密钥。

mc admin accesskey remove 命令与 mc admin accesskey rm 的功能等效。

注意

警告

删除后,应用程序将无法再使用该访问密钥进行身份验证。

以下命令会删除指定的访问密钥:

mc admin accesskey rm myminio myuserserviceaccount

命令语法如下:

mc [GLOBALFLAGS] admin accesskey rm                \
                                 ALIAS             \
                                 ACCESSKEYTOREMOVE
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

ACCESSKEYTOREMOVE

mc-cmd

Required

要删除的访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

40 - mc admin heal

说明

mc admin heal 命令会扫描受损或损坏的对象,并对这些对象执行自愈。

mc admin heal 资源开销较大,通常不需要手动执行,即使在驱动器故障或数据损坏事件之后也是如此。

作为正常运行的一部分,MinIO 会:

  • 在每次 POSTGET 操作时,自动修复因静默位腐坏、驱动器故障或其他问题而受损的对象。
  • 使用 scanner 周期性执行后台对象自愈。
  • 在更换驱动器后积极执行对象自愈。

有关 MinIO 如何执行对象自愈的更多详细信息,请参阅 对象自愈

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

语法

mc admin heal 使用以下语法:

mc admin heal [FLAGS] TARGET             \
                      [--all-drives, -a] \
                      [--force]          \
                      [--verbose, -v]

mc admin heal 支持以下参数:

TARGET

mc-cmd

Required

执行对象自愈的存储桶或存储桶前缀的完整路径。 指定已配置的 MinIO 部署的 alias 作为该路径的前缀。 例如:

mc admin heal play/mybucket/myprefix

如果 TARGET 存储桶或存储桶前缀存在活动的自愈扫描,命令将返回该扫描的状态。

--all-drives, -a

mc-cmd

Optional

选择所有驱动器并显示详细信息。

--force

mc-cmd

Optional

禁用警告提示。

--verbose, -v

mc-cmd

Optional

显示离线和故障驱动器的自愈信息。

自愈颜色

某些版本的 MinIO 使用颜色标识来区分不同自愈状态的对象。

说明

变更: mc

RELEASE.2024-11-17T19-35-25Z

颜色含义已更新。

  • 绿色表示存储桶健康。
  • 黄色表示存储桶在一个或多个驱动器上需要执行自愈。
  • 红色表示一个或多个驱动器处于不健康状态。
  • 灰色表示自愈状态不确定。

41 - mc admin policy rm

语法

从目标 MinIO 部署中移除 IAM 策略。

mc admin policy remove 命令与 mc admin policy rm 具有等效功能。

以下命令从 myminio MinIO 部署中移除名为 writeonly 的策略:

mc admin policy rm myminio writeonly

该命令的语法如下:

mc admin policy rm TARGET POLICYNAME
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

mc admin policy rm 命令接受以下参数:

TARGET

mc-cmd

要移除策略的已配置 MinIO 部署的 alias

POLICYNAME

mc-cmd

要移除的策略名称。

全局标志

此命令支持 全局标志 中的任意选项。

示例

移除名为 listbuckets 的策略。

mc admin policy rm myminio listbuckets

42 - mc admin user sts info

语法

mc admin user sts info 命令用于检索指定 STS 凭证的信息,例如生成该凭证的父 MinIO user、关联策略和过期时间。

STS 凭证为 MinIO 部署提供临时访问权限。

以下命令检索具有指定访问密钥的 STS 凭证信息:

mc admin user sts info myminio/ "J123C4ZXEQN8RK6ND35I"

该命令的语法如下:

mc [GLOBALFLAGS] admin user sts info          \
                                [--policy]    \
                                ALIAS         \
                                STSACCESSKEY
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

STSACCESSKEY

mc-cmd

Required

STS 凭证的访问密钥。

--policy

mc-cmd

Optional

以 JSON 格式打印附加到指定 STS 凭证的策略。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

43 - mc admin user svcacct rm

警告

重要

此命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

从 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,请使用 mc admin accesskey rm 命令删除内置 MinIO IDP 用户的访问密钥。

对于 AD/LDAP 用户的访问密钥,请使用 mc idp ldap accesskey rm 命令。

语法

mc admin user svcacct rm 命令会删除部署中与某个用户关联的访问密钥。

mc admin user svcacct remove 命令与 mc admin user svcacct rm 的功能等效。

删除后,应用程序将无法再使用该访问密钥进行身份验证。

以下命令会删除指定的访问密钥:

mc admin user svcacct rm myminio myuserserviceaccount

命令语法如下:

mc [GLOBALFLAGS] admin user svcacct remove          \
                                    ALIAS           \
                                    SERVICEACCOUNT
  • 方括号 [] 表示可选参数。
  • 同一行中的参数彼此相互依赖。
  • 使用管道符 | 分隔的参数彼此互斥。

请先将示例复制到文本编辑器中并按需修改,再在终端 / shell 中运行命令。

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

SERVICEACCOUNT

mc-cmd

Required

要删除的服务账户访问密钥。

全局标志

此命令支持 全局标志 中的任意选项。

行为

S3 兼容性

mc 命令行工具以兼容 AWS S3 API 为目标构建,并针对 MinIO 和 AWS S3 进行了测试,以验证预期的功能与行为。

对于其他 S3 兼容服务,MinIO 不提供任何保证,因为这些服务的 S3 API 实现未知, 因此不在支持范围内。虽然 mc 命令 可能 仍能按文档说明工作,但此类 用法需要你自行承担风险。

44 - mc admin info

描述

mc admin info 命令显示 MinIO 服务器的信息。 对于分布式 MinIO 部署,mc admin info 会显示部署中每个 MinIO 服务器的信息。

说明

新增: mc

RELEASE.2024-05-03T11-21-07Z

命令输出包含集群的 erasure code 设置信息。 该信息在输出中以 EC:# 格式显示。

命令输出如下所示:

●  play.min.io
   Uptime: 2 hours
   Version: 2024-05-10T08:24:14Z
   Network: 1/1 OK
   Drives: 4/4 OK
   Pool: 1

Pools:
   1st, Erasure sets: 1, Drives per erasure set: 4

0 B Used, 3 Buckets, 0 Objects
4 drives online, 0 drives offline, EC:1

示例

以下示例假定 play 别名已存在于 mc 配置文件 中。你可以将 play 替换为 你首选 S3 兼容部署的别名。

有关别名的更多信息,请参阅 mc alias

mc admin info play

语法

mc admin info 语法如下:

mc admin info TARGET      \
              [--offline]

将已配置 MinIO 部署的 alias 指定为 TARGET

参数

TARGET

mc-cmd

Required

要显示信息的部署 alias

--offline

mc-cmd

Optional

仅显示离线驱动器或节点。

45 - mc admin user svcacct

警告

重要

这些命令已被替代,并将在未来的 MinIO 客户端版本中弃用。

自 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,与内置 MinIO IDP 用户及其访问密钥或 STS 令牌相关的功能,请使用 mc admin accesskey 命令及其子命令。

对于 AD/LDAP 用户的访问密钥,请使用 mc idp ldap accesskey 命令及其子命令。

描述

mc admin user svcacct 命令及其子命令用于在 MinIO 部署上创建和管理 访问密钥

自 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,这些命令已由 mc admin accesskeymc idp ldap accesskey 取代。 该命令及其子命令将在未来的 MinIO 客户端版本中弃用。

每个访问密钥都关联到一个 用户身份,并继承其父用户所附加的 策略 父用户所属组的策略。 每个访问密钥还支持可选的内联策略,用于进一步将访问限制在父用户可用操作和资源的子集范围内。

mc admin user svcacct 仅支持为 MinIO 托管Active Directory/LDAP 托管 账户创建访问密钥。

如需为 OpenID Connect 托管用户 创建访问密钥,请登录 MinIO Console 并通过 UI 生成访问密钥。

mc admin user svcacct 命令包含以下子命令:

子命令

描述

add

mc admin user svcacct add 命令为现有 MinIO 或 AD/LDAP 用户添加新的访问密钥。

disable

mc admin user svcacct disable 命令用于禁用现有访问密钥。

edit

mc admin user svcacct edit 命令用于修改与指定用户关联的访问密钥配置。

enable

mc admin user svcacct enable 命令用于启用现有访问密钥。

info

mc admin user svcacct info 命令返回指定 access key 的描述信息。

list

mc admin user svcacct ls 命令列出与指定用户关联的所有访问密钥。

rm

mc admin user svcacct rm 命令会删除部署中与某个用户关联的访问密钥。

46 - mc admin kms key

描述

mc admin kms key 命令通过 MinIO Key Encryption Service (KES) 执行加密密钥管理操作。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

语法

mc admin kms key create

mc-cmd

在 Key Management System (KMS) 上创建一个新的主密钥。

该命令语法如下:

mc admin kms key create TARGET [KEY_NAME]

该命令接受以下参数:

TARGET

mc-cmd

指定已配置 MinIO 部署的 alias

TARGET 部署 必须 包含已配置的 MinIO Key Encryption Service (KES) 服务器。

KEY_NAME

mc-cmd

指定新主密钥的名称。

mc admin kms key status

mc-cmd

请求 Key Management System (KMS) 主密钥的信息。

该命令语法如下:

mc admin kms key status TARGET [KEY_NAME]

该命令接受以下参数:

TARGET

mc-cmd

指定已配置 MinIO 部署的 alias

TARGET 部署 必须 包含已配置的 MinIO Key Encryption Service (KES) 服务器。

KEY_NAME

mc-cmd

指定 KMS 上主密钥的名称。

省略此参数可返回 TARGET 所指部署上的默认主密钥。

mc admin kms key list

mc-cmd

列出 MinIO 实例的所有 Key Management System (KMS) 密钥。

该命令语法如下:

mc admin kms key list TARGET

该命令接受以下参数:

TARGET

mc-cmd

指定已配置 MinIO 部署的 alias

TARGET 部署 必须 包含已配置的 MinIO Key Encryption Service (KES) 服务器。

47 - mc admin logs

说明

需要完成 SUBNET 注册

mc support 命令面向已在 MinIO SUBNET 注册的 MinIO 部署设计,以确保诊断和 性能测试获得最佳结果。 未注册 SUBNET 的部署无法使用 mc support 命令。

说明

变更: RELEASE.2022-12-02T23-48-47Z

mc support logs 已迁移至 mc admin logs,并提供了更简化的命令接口,用于显示 MinIO 部署的服务器日志。

对于由 systemd 管理的部署,其输出与 journalctl -uf minio 提供的内容类似。

描述

使用 mc admin logs 命令显示 MinIO 服务器日志。

上传功能默认保持禁用,只有在某个部署上明确选择加入后才会启用。 如果已经启用,你可以随时使用 mc support callhome disable 关闭该功能。

示例

显示某个部署的日志

以下命令显示别名为 minio1 的部署中任意类型的最近 10 条服务器日志。

mc admin logs minio1

显示某个节点最近 5 条日志条目

以下命令显示别名为 minio1 的部署中 node1 节点最近的 5 条日志条目。

mc admin logs --last 5 myminio node1

显示某个部署的 application 类型日志条目

以下命令显示别名为 minio1 的部署中所有节点的 application 类型日志条目。

mc admin logs --type application minio1

语法

命令语法如下:

mc admin logs [GLOBAL FLAGS]     \
              [--last, -l value] \
              [--type, -t value] \
              ALIAS              \
              [NODE]

参数

ALIAS

mc-cmd

Required

MinIO 部署的 alias

--last, -l

mc-cmd

Optional

仅显示最近指定数量的日志条目。

如果不包含此标志,则最多显示最近 10 条日志条目。

--type, --type

mc-cmd

Optional

列出指定类型的日志条目。 有效类型为 minioapplicationall

如果未指定,则显示所有类型的日志条目。

NODE

mc-cmd

Optional

在分布式部署中,输入节点名称以指定要显示其日志的节点。

全局标志

此命令支持 全局标志 中的任意选项。

48 - mc admin policy

说明

变更: mc

RELEASE.2023-03-20T17-17-53Z

以下命令已弃用:

新增以下命令:

说明

mc admin policy 命令用于管理可与 MinIO 基于策略的访问控制 (PBAC) 配合使用的策略。 MinIO PBAC 使用与 IAM 兼容的策略 JSON 文档来定义访问 MinIO 服务器资源的规则。

有关 MinIO PBAC 的完整文档(包括策略文档 JSON 结构与语法),请参阅 访问管理。要管理使用 LDAP 认证的部署中的策略,请参阅 mc idp ldap policy

子命令

mc admin policy 包含以下子命令:

子命令

说明

attach

将一个或多个 IAM 策略附加到 MinIO 管理的用户或组

create

在目标 MinIO 部署上创建一个新策略。

detach

MinIO 管理的用户或组 中移除一个或多个 IAM 策略。

entities

列出目标 MinIO 部署中与策略、用户或组关联的实体。

info

如果目标 MinIO 部署上存在指定策略,则以 JSON 格式返回该策略。

ls

列出目标 MinIO 部署上的所有策略。

rm

从目标 MinIO 部署中移除 IAM 策略。

49 - mc admin prometheus

说明

mc admin prometheus 命令及其子命令用于访问 MinIO Prometheus 指标。

子命令

mc admin prometheus 包含以下子命令:

子命令

说明

generate

mc admin prometheus generate 命令会生成一个用于 Prometheus 的指标抓取配置文件。

metrics

mc admin prometheus metrics 命令用于输出集群的 Prometheus 指标。

50 - mc admin rebalance

权限

执行此命令的用户必须拥有该部署的 admin:Rebalance 策略操作

描述

mc admin rebalance 命令可用于在 MinIO 部署上启动、监控或停止再平衡操作。 再平衡会在部署中的所有池之间重新分配对象。

当新增 服务器池 时,MinIO 不会自动对对象执行再平衡。 相反,MinIO 会将 新对象写入 相较于部署中其他可用池可用空间更多的池。 触发手动再平衡流程会促使 MinIO 扫描整个部署,并按需移动对象,以使所有池的可用空间大致相当。

这是一项开销大且耗时的操作。 建议仅在部署负载较轻或空闲时运行再平衡流程。 如果在再平衡期间发生写操作,这些写操作会并行处理,并写入当前未参与再平衡的池。

你可以停止再平衡,并在之后按需重新启动。

使用以下命令跟踪正在进行的再平衡操作进度:

mc admin trace --call rebalance ALIAS
说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

mc admin rebalance 命令具有以下子命令:

子命令 说明
mc admin rebalance start 在 MinIO 部署上启动再平衡操作。
mc admin rebalance status 输出正在进行的再平衡操作的当前状态。
mc admin rebalance stop 停止正在进行中的再平衡操作。

语法

mc admin rebalance start

mc-cmd

为 MinIO 部署启动再平衡操作。

假设一个 MinIO 部署有两个池,并分配了别名 minio1。 其中一个池有 250 GB 可用空间,另一个池有 3 TB 可用空间。

mc admin rebalance 命令会将对象从可用空间较少的池迁移到可用空间较多的池,使两个池的可用空间大致相等。

mc admin rebalance start minio1

该命令的语法如下:

mc [GLOBALFLAGS] admin rebalance start ALIAS
  • 将 ALIAS 替换为要执行再平衡的 MinIO 部署的 别名

mc admin rebalance status

mc-cmd

查询具有活动再平衡进程的部署,并返回该再平衡进程的状态信息。

状态输出包括再平衡操作 ID、操作时间,以及部署中每个池的详细信息。 对每个池,状态会显示池 ID、该池的再平衡状态、已用空间百分比以及该池的再平衡进度。

mc admin rebalance status minio1

该命令的语法如下:

mc [GLOBALFLAGS] admin rebalance ALIAS
  • 将 ALIAS 替换为 MinIO 部署的 别名

mc admin rebalance stop

mc-cmd

结束指定部署上正在进行中的再平衡任务。

mc admin rebalance stop minio1

该命令的语法如下:

mc [GLOBALFLAGS] admin rebalance stop ALIAS
  • 将 ALIAS 替换为 MinIO 部署的 别名

全局标志

此命令支持 全局标志 中的任意选项。

行为

先备份集群设置

在开始下线操作前,使用 mc admin cluster bucket exportmc admin cluster iam export 命令分别对存储桶元数据和 IAM 配置进行快照。 必要时可使用这些快照恢复存储桶/IAM 设置,以便从用户或进程错误中恢复。

再平衡会忽略已过期对象和尾部 DeleteMarker

RELEASE.2023-06-23T20-26-00Z 开始,再平衡会忽略那些基于父存储桶已配置的 生命周期规则 而过期的对象版本。

再平衡还会忽略仅剩余版本为 删除标记 的对象。 这可避免对已被视为完全删除的对象执行跨池 I/O

MinIO 依赖 scanner 来识别并清理这些过期对象或尾部 DeleteMarker 对象。

51 - mc admin replicate

说明

变更: RELEASE.2023-01-11T03-14-16Z

描述

mc admin replicate 命令用于为一组 MinIO 对等站点创建并管理 站点复制

站点复制类似于 active-active 存储桶复制,但适用于多个 MinIO 部署。 在这组站点中,无论 IAM 设置、存储桶或对象发生何种变更,该变更都会在站点复制组中的所有站点间复制。

存储桶复制 用于在单个部署内或跨部署将特定存储桶或对象从一个位置镜像到另一个位置,而站点复制会持续将整个 MinIO 站点镜像到其他站点。

在配置站点复制时,mc admin replicate 仅支持 分布式部署 的站点复制。

在初始化新的站点复制配置时,只允许一个部署包含数据。

站点复制会对所有存储桶强制启用 存储桶版本控制,包括现有存储桶以及启动站点复制后新增的任何存储桶。 与仅处理对象最新版本的 mc mirror 相比,站点复制会完整同步版本化对象。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

mc admin replicate 命令包含以下子命令:

子命令 描述
mc admin replicate add 创建新的站点复制配置,或扩展现有配置。
mc admin replicate info 返回站点复制配置信息。
mc admin replicate resync 当第二个站点丢失数据时,将一个站点中的内容重新同步到第二个站点。
mc admin replicate rm 删除整个站点复制配置,或将一个或多个对等站点从站点复制中移除。
mc admin replicate status 显示参与站点之间 可复制数据 的状态。
mc admin replicate update 修改站点复制配置中指定对等站点的 endpoint。

语法

mc admin replicate add

mc-cmd

创建或扩展站点复制配置。 按 MinIO 的建议,该配置默认使用异步站点复制。

若要启用同步站点复制,请先使用此命令创建复制配置。 然后使用 mc admin replicate update --mode sync 更新配置。

假设一个多站点 MinIO 拓扑包含三个独立的 MinIO 部署,使用以下 别名minio1minio2minio3。 三个站点之间都具备完整的双向网络访问,并且站点间延迟较低。

mc admin replicate add minio1 minio2 minio3

以下命令将一个现有站点复制配置(包含对等站点 minio1minio2minio3minio4)扩展到新的对等站点 minio5minio5 不包含任何数据。 请先列出 所有 现有对等站点。 最后列出要扩展到的站点。

如果任一现有站点不可达,请先使用 mc admin replicate rm 删除不可达站点,再继续扩展站点复制。

mc admin replicate add minio1 minio2 minio3 minio4 minio5

以下命令创建新的站点复制配置,并在对等站点 minio1minio2minio3 之间同步 ILM 过期规则。

mc admin replicate add minio1 minio2 minio3 --replicate-ilm-expiry

命令语法如下:

mc [GLOBALFLAGS] admin replicate add      \
                            ALIAS1        \
                            ALIAS2        \
                            [ALIAS3 ...]  \
                            [--replicate-ilm-expiry]

ALIAS

mc-cmd

Required

要纳入站点复制的 MinIO 部署 别名

创建站点复制至少需要两个 MinIO 部署别名。 只有第一个别名可以包含存储桶或对象。 第一个站点也可以为空。

要将现有站点复制扩展到一个或多个新站点,请先列出待扩展的站点复制集合中所有现有对等站点的 别名。 然后再附加一个或多个 别名,将其加入现有站点复制。 新增对等站点必须为空。

--replicate-ilm-expiry

mc-cmd

Optional

说明

新增: mc

RELEASE.2023-12-02T02-03-28Z

在对等站点间复制 ILM expiration 规则。

mc admin replicate update

mc-cmd

修改参与站点复制的现有对等站点所使用的 endpoint。

说明

变更: RELEASE.2023-01-11T03-14-16Z

mc admin replicate edit renamed to mc admin replicate update.

mc admin replicate update                                                   \
                   minio2                                                 \
                   --deployment-id c1758167-4426-454f-9aae-5c3dfdf6df64   \
                   --endpoint https://minio2:9000

命令语法如下:

mc [GLOBALFLAGS] admin replicate update                     \
                            ALIAS                           \
                            --deployment-id [deploymentID]  \
                            --endpoint [newEndpoint]        \
                            --mode ["sync" | "async"]       \
                            --enable-ilm-expiry-replication \
                            --disable-ilm-expiry-replication

ALIAS

mc-cmd

Required

MinIO 部署的 别名

--bucket-bandwidth

mc-cmd

以每秒比特为单位设置存储桶的默认带宽限制。

有效单位包括:

  • B 表示字节
  • K 表示千字节
  • M 表示兆字节
  • G 表示吉字节
  • T 表示太字节
  • Ki 表示 kibibyte
  • Mi 表示 mibibyte
  • Gi 表示 gibibyte
  • Ti 表示 tebibyte

例如,以下命令将 myminio 部署上的复制带宽限制为不超过每秒 2 Gigabytes。

mc admin replicate update myminio --deployment-id c1758167-4426-454f-9aae-5c3dfdf6df64 --bucket-bandwidth "2G"

--deployment-id

mc-cmd

Required

要修改的部署唯一 ID。

可通过运行 mc admin replicate info ALIAS 获取部署 ID

--disable-ilm-expiry-replication

mc-cmd

Optional

说明

新增: mc

RELEASE.2023-12-02T02-03-28Z

停止在对等站点之间复制 ILM 过期规则。 对等站点之间已经同步的现有规则不会从任何对等站点移除。

--enable-ilm-expiry-replication

mc-cmd

Optional

说明

新增: mc

RELEASE.2023-12-02T02-03-28Z

开始在对等站点之间复制 ILM 过期规则。

--endpoint

mc-cmd

Required

与该对等站点关联的新 endpoint 或 URL。

--mode

mc-cmd

Optional

指定 MinIO 对该对等站点执行同步或异步复制操作。 可用值为 syncasync

默认值为 async

--sync

mc-cmd

Optional

警告

重要

--sync 标志自 RELEASE.2023-07-07T05-25-51Z 起已弃用。 请改用 --mode

启用或禁用同步站点复制。 可用值为 enabledisable。 若未定义,MinIO 使用异步站点复制。

mc admin replicate rm, remove

mc-cmd

说明

变更: RELEASE.2023-01-11T03-14-16Z

mc admin replicate remove 子命令重命名为 mc admin replicate rm

从站点复制配置中移除一个或多个站点。

请注意,如果你打算未来将该站点重新加入站点复制配置,则其必须不包含任何 可复制数据

从包含 minio2 的现有站点复制配置中,移除所有已连接站点的站点复制。 这会删除所有参与站点的站点复制配置。

mc admin replicate rm      \
                   minio2  \
                   --all   \
                   --force

从包含 minio2 的现有站点复制配置中移除别名为 minio5minio6 的站点

mc admin replicate rm      \
                   minio2  \
                   minio5  \
                   minio6  \
                   --force

命令语法如下:

mc [GLOBALFLAGS] admin rm          \
                       TARGET      \
                       ALIAS1      \
                       [ALIAS2...] \
                       --all       \
                       --force

TARGET

mc-cmd

Required

要操作的站点复制中,处于活动状态的 MinIO 部署 别名。 除非要从站点复制中移除所有站点,否则不要使用待移除部署的别名。

ALIAS

mc-cmd

Optional

要从站点复制配置中移除的活动 MinIO 部署 别名。 可重复指定以移除更多站点。

--all

mc-cmd

Optional

包含此标志可移除为站点复制配置的所有站点,并结束该站点复制配置。

--force

mc-cmd

Required

此标志会强制从站点复制配置中移除指定的对等站点。

mc admin replicate info

mc-cmd

返回站点复制配置中各站点的信息。

示例
mc admin replicate info minio1
语法
mc [GLOBALFLAGS] admin replicate info ALIAS

ALIAS

mc-cmd

Required

站点复制配置中活动 MinIO 部署的 别名

mc admin replicate status

mc-cmd

显示站点复制配置中站点、存储桶、用户、组或策略的状态。

显示包含站点 minio1 的站点复制配置的整体复制状态。

mc admin replicate status minio1

显示包含站点 minio1 的站点复制配置中,跨站点的存储桶复制状态。

mc admin replicate status     \
                   minio1     \
                   --buckets

显示包含站点 minio1 的站点复制配置中,名为 images 的存储桶在跨站点间的站点复制状态。

mc admin replicate status           \
                    minio1          \
                    --bucket images

显示包含站点 minio1 的站点复制配置中,用户 janedoe 设置在跨站点间的站点复制状态。

mc admin replicate status         \
                   minio1         \
                   --user janedoe

上述示例的输出类似如下:

Bucket replication status:
●  30/30 Buckets in sync

Policy replication status:
●  5/5 Policies in sync

User replication status:
●  3/3 Users in sync

Group replication status:
No Groups present

ILM Expiry Rules replication status:
●  5/5 ILM Expiry Rules in sync

Object replication status:
Replication status since 1 day
Summary:
Replicated:    0 objects (0 B)
Queued:        - 0 objects, (0 B) (avg: 0 objects, 0 B; max: 0 objects, 0 B)
Received:      0 objects (0 B)

显示包含站点 minio1 的站点复制配置中,规则 ID 为 ckok9v5b4dtgofkbi6tg 的 ILM 过期规则在跨站点间的站点复制状态。

mc admin replicate status minio1 --ilm-expiry-rule ckok9v5b4dtgofkbi6tg

输出类似如下:

●  ILM Expiry Rule replication summary for: ckok9v5b4dtgofkbi6tg

ILMExpiryRule   | MINIO1          | MINIO2
ILM Expiry Rule ||
mc [GLOBALFLAGS] admin replicate status          \
                   TARGET                        \
                   [--all]                       \
                   [--buckets]                   \
                   [--bucket nameOfBucket]       \
                   [--groups]                    \
                   [--group nameOfGroup]         \
                   [--ilm-expiry-rules]          \
                   [--ilm-expiry-rule <rule ID>] \
                   [--policies]                  \
                   [--policy nameOfPolicy]       \
                   [--users]                     \
                   [--user accessKey]

TARGET

mc-cmd

Required

站点复制配置中活动 MinIO 部署的 别名

--all

mc-cmd

Optional

显示所有可用的站点复制状态信息。

--buckets

mc-cmd

Optional

显示所有存储桶的复制状态。

--bucket

mc-cmd

Optional

在该标志后指定存储桶名称,以显示特定存储桶的复制状态。

--groups

mc-cmd

Optional

显示所有组的复制状态。

--group

mc-cmd

Optional

在该标志后指定组名称,以显示特定组的复制状态。

--ilm-expiry-rules

mc-cmd

Optional

说明

新增: mc

RELEASE.2023-12-02T02-03-28Z

显示 ILM 过期规则的同步信息。

--ilm-expiry-rule 互斥

--ilm-expiry-rule

mc-cmd

Optional

说明

新增: mc

RELEASE.2023-12-02T02-03-28Z

显示指定 ILM 过期规则的复制状态信息。

--ilm-expiry-rules 互斥

--policies

mc-cmd

Optional

显示所有策略的复制状态。

--policy

mc-cmd

Optional

在该标志后指定策略名称,以显示特定策略的复制状态。

--users

mc-cmd

Optional

显示所有用户的复制状态。

--user

mc-cmd

Optional

在该标志后指定用户名,以显示特定用户的复制状态。

mc admin replicate resync

mc-cmd

在数据丢失场景下,将复制配置中一个站点的数据重新同步到复制配置中的第二个站点。

以下命令启动重新同步过程,将 minio1 的数据恢复到 minio2

mc admin replicate resync start minio1 minio2

以下命令显示当前进行中的重新同步状态。

mc admin replicate resync status minio1 minio2

以下命令停止进行中的重新同步。

mc admin replicate resync cancel minio1 minio2
mc [GLOBALFLAGS] admin replicate resync start|status|cancel ALIAS1 ALIAS2
  • ALIAS1 替换为拥有待恢复数据的站点别名。
  • ALIAS2 替换为需要重新同步数据的站点别名。

start

mc-cmd

从拥有数据的一个站点到需要同步的第二个站点,发起新的重新同步流程。

status

mc-cmd

显示已配置站点复制的两个站点之间,现有重新同步流程的状态。

cancel

mc-cmd

结束已配置站点复制的两个站点之间当前进行中的重新同步流程。

alias1

mc-cmd

站点复制配置中活动 MinIO 部署的 别名,其包含你希望重新同步到另一个站点的数据。

alias2

mc-cmd

站点复制配置中活动 MinIO 部署的 别名,其需要从另一个站点重新同步数据。

全局标志

此命令支持 全局标志 中的任意选项。

52 - mc admin scanner

说明

mc admin scanner 命令提供有关 scanner 进程的信息。

子命令

mc admin scanner 包含以下子命令:

子命令

说明

status

mc admin scanner status 命令会显示 MinIO Server 的 scanner 信息的实时摘要。

trace

mc admin scanner trace 命令会显示目标 MinIO 部署上发生的 scanner 相关 API 操作。

53 - mc admin service

说明

mc admin service 命令可用于重启或解除冻结 MinIO 服务器。

mc admin service 会同时影响目标部署中的 所有 MinIO 服务器。 该命令会中断 MinIO 部署上正在进行的 API 操作。对某个部署执行此命令时请谨慎。

说明

mc admin 仅用于 MinIO 部署

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

示例

重启目标部署中的 MinIO 服务器

以下示例使用默认的 myminio 别名。myminio 别名指向运行在 9000 端口上的本地 minio 服务器。有关安装并运行本地 minio 服务器实例的更多信息,请参阅 <installation instructions>。

有关别名的更多信息,请参阅 mc alias

mc admin service restart myminio

恢复目标部署上的 S3 调用

以下示例使用默认的 myminio 别名。myminio 别名指向运行在 9000 端口上的本地 minio 服务器。有关安装并运行本地 minio 服务器实例的更多信息,请参阅 <installation instructions>。

有关别名的更多信息,请参阅 mc alias

mc admin service unfreeze myminio

语法

mc admin service 的语法如下:

mc admin service COMMAND [ARGUMENTS]

mc admin service 支持以下命令:

restart

mc-cmd

重启 MinIO 服务器。 如有需要,命令可能会根据状态建议重启节点。

mc admin service restart 的语法如下:

mc admin service restart ALIAS

指定已配置 MinIO 部署的 aliasrestart 会重启该部署中的 所有 MinIO 服务器。

unfreeze

mc-cmd

恢复 MinIO 集群上的 S3 API 调用。

mc admin service unfreeze 的语法如下:

mc admin service unfreeze ALIAS

指定已配置 MinIO 部署的 alias

54 - mc admin trace

说明

mc admin trace 命令显示目标 MinIO 部署上发生的 API 操作。

说明

仅在 MinIO 部署上使用 mc admin

MinIO 不支持将 mc admin 命令用于其他 S3 兼容服务, 无论这些服务声称与 MinIO 部署具有何种兼容性。

示例

监控所有 API 操作

使用 mc admin trace 监控 MinIO 部署上的 API 操作:

mc admin trace -a ALIAS

查看返回 503 错误的调用

使用 mc admin trace 监控返回 503 Service Unavailable 错误的 API 操作:

mc admin trace -v --status-code 503 ALIAS

查看指定路径的控制台跟踪

使用 mc admin trace 监控指定路径的活动:

mc admin trace --path my-bucket/my-prefix/* ALIAS
  • ALIAS 替换为 MinIO 部署的 alias
  • my-bucket/my-prefix/* 替换为你要跟踪的存储桶、前缀和对象名称或通配符。

查看响应大小大于 1Mb 的控制台跟踪

使用 mc admin trace 监控超过指定大小的响应:

mc admin trace --filter-response --filter-size 1Mb ALIAS
  • ALIAS 替换为 MinIO 部署的 alias
  • 1Mb 替换为所需的响应大小。

查看请求操作时长大于 5ms 的控制台跟踪

使用 mc admin trace 监控耗时较长的操作:

mc admin trace --filter-duration --filter-size 5ms ALIAS

语法

mc admin trace 的语法如下:

mc admin trace [FLAGS] TARGET

mc admin trace 支持以下参数:

TARGET

mc-cmd

指定已配置 MinIO 部署的 alias,用于监控其 API 操作。

--all, a

mc-cmd

返回 MinIO 部署上的所有流量,包括 MinIO 服务器之间的节点间流量。

--call

mc-cmd

仅跟踪匹配的客户端操作或调用类型。 例如,以下命令仅跟踪 scanner 类型的操作。

mc admin trace --call scanner TARGET

有效的调用类型包括:

  • batch-keyrotation
  • batch-replication
  • bootstrap
  • decommission
  • ftp
  • healing
  • ilm
  • internal
  • os
  • rebalance
  • replication-resync
  • s3
  • scanner
  • storage

如果未指定,MinIO 返回 s3 类型的调用。

--errors, e

mc-cmd

仅返回失败的 API 操作。

--filter-request

mc-cmd

跟踪请求大小大于指定 --filter-size 值的客户端操作或调用。

必须与 --filter-size 标志一起使用。

--filter-response

mc-cmd

跟踪响应大小大于指定 --filter-size 值的客户端操作或调用。

必须与 --filter-size 标志一起使用。

--filter-size

mc-cmd

过滤后的客户端操作或调用的大小限制。

必须与 --filter-request--filter-response 标志之一一起使用。

有效单位包括:

后缀 单位大小
k KB(Kilobyte,1000 Bytes)
m MB(Megabyte,1000 Kilobytes)
g GB(Gigabyte,1000 Megabytes)
t TB(Terrabyte,1000 Gigabytes)
ki KiB(Kibibyte,1024 Bites)
mi MiB(Mebibyte,1024 Kibibytes)
gi GiB(Gibibyte,1024 Mebibytes)
ti TiB(Tebibyte,1024 Gibibytes)

--funcname

mc-cmd

返回输入函数名对应的调用。

--method

mc-cmd

返回指定 HTTP 方法的调用。

--node

mc-cmd

返回指定服务器的调用。

--path

mc-cmd

返回指定路径的调用。

--request-header

mc-cmd

返回与提供的请求头匹配的调用。

--request-query

mc-cmd

返回与提供的请求查询参数匹配的调用。 此调试选项只能在 MinIO Support 指导下使用。

--response-duration

mc-cmd

跟踪响应时长大于指定值的调用。

--response-threshold

mc-cmd

接受时间字符串作为值,例如 5ms。 仅返回响应时间大于所提供阈值的调用。

如果未指定,MinIO 返回响应时间大于 5ms 的调用。

--status-code

mc-cmd

返回指定 HTTP 状态码的调用。

--stats

mc-cmd

在当前跟踪会话期间,为每个被跟踪的函数调用累积聚合统计信息。

输出表包含以下列。

Call

捕获到的客户端操作或函数名称。

Count

客户端操作或调用发生的次数。

RPM

客户端操作或调用的每分钟速率(Rate Per Minute,RPM)。

Avg Time

客户端操作或调用完成所需的平均时间。

Min Time

客户端操作或调用完成所用的最短时间。

Max Time

客户端操作或调用完成所用的最长时间。

Avg TTFB

客户端操作或调用响应的平均首字节时间(Time To First Byte,TTFB)。

Max TTFB

客户端操作或调用响应的最大首字节时间。

Avg Size

客户端操作或调用响应的平均大小。

Errors

因错误失败的客户端操作或调用数量。

RX Avg

客户端操作或调用的平均接收字节数(Bytes Received,RX)。 此统计仅在值不为零(0)时显示。

TX AVG

客户端操作或调用的平均发送字节数(Bytes Sent,TX)。 此统计仅在值不为零(0)时显示。

累积统计信息,例如名称、计数、持续时间、最短时间、最长时间、首字节时间或错误。 最多累积 15 条统计条目。

--verbose

mc-cmd

返回详细输出。

全局标志

此命令支持 全局标志 中的任意选项。

55 - mc admin update

描述

mc admin update 命令会调用 MinIO 兼容的服务端原地更新 API。客户端可传入可选的发布镜像 URL,由服务端把选定的二进制分发到所有节点。

运行该命令后,会显示确认更新的提示。 输入 y 并按 [ENTER],即可确认并继续更新。

用户 必须 对二进制安装目标位置具有 write 权限。

注意

不要在 Silo 上使用默认更新路径

截至 2026-08-05,最新公开 Silo 服务端 RELEASE.2026-08-04T00-00-00Z 在省略 MIRROR_URL 时仍会解析到上游 dl.min.io 发布源,并保留上游 MinIO 签名密钥。对已启用更新的 Silo 服务端运行 mc admin update ALIAS,因此可能会把 Silo 替换成上游 MinIO 二进制。

请在 Silo 服务端设置 MINIO_UPDATE=off,并通过下载与安装、可信软件仓库或手工校验的 Silo 制品升级。本页保留命令契约是为了兼容,并不表示这是推荐的 Silo 升级流程。

说明

仅在 Silo 或兼容的 MinIO 部署上使用 mc admin

mc admin 使用 MinIO 专用管理 API。仅仅兼容通用 S3 API,并不意味着其他对象存储支持这些命令。

注意事项

协调重启

mc admin update 会更新二进制并同时重启部署中的所有服务器。应用应预期短暂不可用,并重试失败或中断的请求;对象操作的原子性并不能让全量集群重启对应用不可见。

请使用协调一致的升级与重启流程。除非发布说明明确声明支持混合版本,否则不要逐节点滚动替换二进制。

权限

执行该命令的用户 必须 对 MinIO 服务端二进制安装目标路径具有 write 权限。

示例

下面的继承形式仅用于说明命令契约。不要对 Silo 执行它,因为省略 MIRROR_URL 会选择上游 MinIO 更新源:

mc admin update ALIAS

ALIAS 替换为目标部署的 alias

运行该命令后,在提示中输入 yes 以确认并执行更新。

语法

mc admin update 语法如下:

mc admin update ALIAS         \
                [MIRROR_URL]  \
                [--yes]

mc admin update 支持以下参数:

ALIAS

mc-cmd

要更新的 MinIO 部署的 alias

如果指定的 ALIAS 对应的是分布式 MinIO 部署,mc admin update 会同时更新该部署中的 所有 MinIO 服务器。

使用 mc alias list 查看已配置的别名及其对应的 MinIO 部署端点。

MIRROR_URL

mc-cmd

目标服务端用于定位 minio 二进制的发布清单 URL。仅仅提供 URL 并不能使制品自动可信;使用这条兼容路径前必须核验完整的更新与签名契约。Silo 运维应优先使用文档化的软件包或手工升级流程。

--yes, -y

mc-cmd

Optional

传入此标志以确认更新,并跳过确认提示。

行为

二进制压缩

说明

变更: RELEASE.2024-01-28T22-35-53Z

mc admin update 会先压缩二进制,再发送到部署中的所有节点。

此功能不适用于 systemctl managed deployments

56 - mc admin user

说明

mc admin user 命令及其子命令用于管理 MinIO 用户

客户端 必须 使用与该部署中某个用户关联的 access key 和 secret key 对 MinIO 部署进行认证。 MinIO 用户是 MinIO 身份与访问管理中的关键组成部分。

要管理使用第三方 IDP 进行认证的用户,请使用对应提供方的命令:

说明

仅在 MinIO 部署上使用 mc idp 命令

mc idp ldapmc idp openid 及其子命令仅支持对 MinIO 部署使用。

子命令

mc admin user 包含以下子命令:

子命令

说明

add

mc admin user add 命令会在目标 MinIO 部署中添加一个新的 MinIO 用户

disable

mc admin user disable 命令用于在目标 MinIO 部署上禁用 MinIO 用户

enable

mc admin user enable 命令用于在目标 MinIO 部署上启用 MinIO 用户

info

mc admin user info 命令返回目标 MinIO 部署中某个 MinIO 用户的详细信息。

ls

mc admin user ls 命令会列出目标 MinIO 部署上的所有 MinIO 用户

rm

mc admin user rm 命令用于在目标 MinIO 部署上移除 MinIO 用户

sts info

mc admin user sts info 命令用于检索指定 STS 凭证的信息,例如生成该凭证的父 MinIO user、关联策略和过期时间。

svcacct

mc admin user svcacct 命令及其子命令用于在 MinIO 部署上创建和管理 访问密钥

自 MinIO客户端版本RELEASE.2024-10-08T09-37-26Z 起,这些命令已由 mc admin accesskeymc idp ldap accesskey 取代。 该命令及其子命令将在未来的 MinIO 客户端版本中弃用。