欢迎来到即将发布的 MinIO 文档版本! 此页面上的内容正在积极开发中 可能随时更改。 如果找不到您要找的内容,请查看我们的 历史文档。 感谢您的耐心等待。 我们期待您贡献自己强大的力量,帮助更多的中国技术开发者![翻译]

MinIO Client (mc)

MinIO 客户端 mc 命令行工具提供了一种现代的替代 UNIX 命令, 如 lscatcpmirrordiff 支持文件系统和兼容 Amazon S3 的云存储服务(AWS Signature v2 和 v4)。

mc 具有以下语法:

mc [FLAGS] COMMAND [ARGUMENTS...] [COMMAND FLAGS | -h]

See 命令快速参考 for a list of supported commands:

快速启动

1) 安装``mc``

mc 命令行工具安装到主机上。 单击与主机操作系统或环境对应的选项卡:

Stable

docker pull minio/mc
docker run minio/mc admin info play

Edge

Do not use bleeding-edge deployments of MinIO in production environments

docker pull minio/mc:edge
docker run minio/mc:edge admin info server play

以下命令为您的系统添加一个 temporary 扩展 用于运行 mc 实用程序的 PATH。 遵从您的操作系统 对系统路径进行永久修改的说明。

或者,执行 mc 通过导航到父文件夹和 运行 ./mc --help

64-bit Intel

curl https://dl.minio.org.cn/client/mc/release/linux-amd64/mc \
  --create-dirs \
  -o $HOME/minio-binaries/mc

chmod +x $HOME/minio-binaries/mc
export PATH=$PATH:$HOME/minio-binaries/

mc --help

64-bit PPC

curl https://dl.minio.org.cn/client/mc/release/linux-ppc64le/mc \
  --create-dirs \
  -o ~/minio-binaries/mc

chmod +x $HOME/minio-binaries/mc
export PATH=$PATH:$HOME/minio-binaries/

mc --help
brew install minio/stable/mc
mc --help

在浏览器中打开以下文件:

https://dl.minio.org.cn/client/mc/release/windows-amd64/mc.exe

通过双击执行文件,or 通过运行 在命令提示符或 powershell 中跟随:

\path\to\mc.exe --help

从源代码安装适用于开发人员和高级用户 并且需要一个可用的 Golang 环境。 看 How to install Golang.

在终端环境中运行以下命令来安装 mc 从源头:

go get -d github.com/minio/mc
cd ${GOPATH}/src/github.com/minio/mc
make

要更新基于源的安装,请使用 go get -u. mc update 不支持基于源的安装。

2) 添加 S3 兼容服务

Important

以下示例临时禁用 bash 历史记录以降低身份验证凭据以纯文本形式泄露的风险。 这是一项基本的安全措施,并不能减轻所有可能的攻击媒介。 在命令行上输入敏感信息时,请遵循操作系统的安全最佳实践。

使用 mc alias set 添加 Amazon S3 兼容服务的命令 到 mc configuration.

bash +o history
mc alias set ALIAS HOSTNAME ACCESS_KEY SECRET_KEY
bash -o history
  • 将 “ALIAS” 替换为与 S3 服务关联的名称。

    mc 命令通常需要 “ALIAS” 作为参数来识别要针对哪个 S3 服务执行。

  • 用 S3 服务的 URL 端点或 IP 地址替换 “HOSTNAME”。

  • ACCESS_KEYSECRET_KEY 替换为 S3 服务上用户的访问和秘密密钥。

用所需的值替换每个参数。 仅指定 mc config host add 命令启动输入提示以输入所需值。

以下每个选项卡都包含一个特定于提供程序的示例:

mc alias set myminio https://minioserver.example.net ACCESS_KEY SECRET KEY
mc alias set myS3 https://s3.amazon.com/endpoint ACCESS_KEY SECRET KEY
mc alias set myGCS https://storage.googleapis.com/endpoint ACCESS_KEY SECRET KEY

3) 测试连接

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

mc admin info myminio

如果成功,该命令将返回有关 S3 服务的信息。 如果 不成功,请检查以下各项:

  • 主机已连接到 S3 服务 URL (i.e. using ping or traceroute).

  • 指定的 ACCESSKEYSECRETKEY 对应于 S3 服务上的用户。 用户必须有权对服务执行操作。

    对于 MinIO 部署,请参阅 Access Management 有关用户访问权限的更多信息。 对于其他 S3 兼容服务,请参阅该服务的文档。

命令快速参考

下表列出了 mc 命令:

Command

Description

mc alias

这个 mc alias 命令提供了一个方便的界面 管理与 S3 兼容的主机列表 mc 能够 连接到并对其运行操作。

mc 在 S3 兼容服务上运行的命令 require 为该服务指定别名。

mc cat

这个 mc cat 命令连接文件的内容或 对象到另一个文件或对象。 您也可以使用该命令 将指定文件或对象的内容显示到 “STDOUT”。 cat 具有与 “cat” 类似的功能。

mc cp

这个 mc cp 命令将数据从一个或多个源复制到目标 S3 兼容服务。

mc diff

这个 mc diff mc 计算两个文件系统目录之间的差异 或 S3 兼容的存储桶。 mc diff 只列出那些对象 丢失或大小不同。 mc diff not 比较内容 的对象。

mc encrypt

这个 mc encrypt mc 设置、更新或禁用默认值 存储桶服务器端加密 (SSE) 模式。 MinIO 自动加密 对象使用指定的 SSE 模式。

有关配置 SSE 的更多信息,请参阅 Encryption and Key Management

mc event

这个 mc event 命令支持添加、删除和列出 存储桶事件通知。

MinIO 自动向配置的通知发送触发事件 目标。 MinIO 支持通知目标,如 AMQP (RabbitMQ)、Redis、 ElasticSearch、NATS 和 PostgreSQL。 看 MinIO Bucket Notifications 更多信息。

mc find

mc find 命令支持查询 S3 兼容的对象 主机。 您还可以使用该命令在文件系统上搜索文件。

mc head

这个 mc head 命令显示对象的前 n 行, 其中 n 是指定给命令的参数。

mc ilm

mc ilm 命令管理对象生命周期管理 桶上的规则。 请参阅 AWS 文档 Object Lifecycle Management 想要查询更多的信息。

mc legalhold

mc legalhold 命令启用或禁用对象合法保留。 对对象启用合法保留可防止对对象进行任何修改或删除, 相当于在对象上设置一次写入只读 (WORM) 模式。

mc lock

Deprecated since RELEASE.2020-09-18T00-13-21Z. Use mc retention.

mc ls

mc ls 命令列出目标上的所有桶和对象 S3 兼容服务。 对于文件系统上的目标,mc ls 具有与 ls 命令相同的功能。

mc mb

mc mb 命令在 指定路径。 对于 S3 兼容服务上的目标,mc mb 创建一个新的存储桶。 对于文件系统上的目标,mc mb 有 等效于 mkdir -p 的功能。

mc mirror

mc mirror 命令将内容同步到兼容 S3 的主机,类似于 rsync 实用程序。 mc mirror 支持文件系统和 S3 兼容主机作为同步源。

mc mv

mc mv 命令将数据从一个或多个源移动到目标 S3 兼容服务。

mc policy

mc policy 命令支持使用 AWS S3 为存储桶及其内容设置或删除匿名策略 JSON policies。 具有匿名策略的存储桶允许公共访问,其中客户端可以执行策略授予的任何操作,而无需执行此操作。

mc rb

mc rb 命令删除目标 S3 兼容服务上的存储桶及其所有内容。

使用 mc rb 删除存储桶也会删除与该存储桶关联的任何配置。 要仅删除存储桶的内容,请改用 mc rm

mc retention

:mc:`mc retention`命令配置一次写入多次读取(WORM)对象 存储桶中一个或多个对象的锁定设置。 您还可以为存储桶设置默认对象锁定设置, 其中没有明确对象锁定设置的所有对象都继承存储桶默认值。

mc rm

mc rm 命令删除目标 S3 兼容服务上的对象。 要完全删除存储桶,请改用 mc rb

mc share

mc share 命令生成带有集成访问凭证的临时 URL,用于将对象上传或下载到 S3 兼容主机。 临时 URL 在可配置的时间限制后过期。

mc sql

mc sql 命令提供了一个 S3 Select 接口,用于对指定的 S3 兼容服务中的对象执行 sql 查询。

mc stat

mc stat 命令显示有关包含在指定的 S3 兼容服务存储桶中的对象的信息。 mc stat 在文件系统路径上使用时具有与 stat 命令类似的功能。

mc tag

mc tag 命令添加、删除和列出与存储桶或对象关联的标签。

mc tree

mc tree 命令以树格式列出桶和目录。

mc update

mc update 命令自动将 mc 二进制文件更新到最新的稳定版本。

mc version

mc version 命令启用或禁用存储桶版本控制。

mc watch

mc watch 命令监视指定的 S3 兼容服务存储桶或本地文件系统路径上的事件。 对于 S3 服务,使用 mc event 在 S3 兼容服务上配置存储桶事件通知。

mc 还包括用于管理 MinIO 部署的管理扩展。 有关更完整的文档,请参阅 mc admin

配置文件

mc 使用 JSON 格式的配置文件,用于存储某些类型的信息, 例如 aliases 用于每个配置的 S3 兼容服务。

For Linux and OSX, the default configuration file location is ~/.mc/config.json.

对于 Windows, mc 尝试通过尝试特定的环境变量来构建默认文件路径。 如果变量未设置, mc 移动到下一个变量。 如果所有尝试都失败, mc 会返回错误。 以下列表按顺序描述了每个可能的文件路径位置 mc 检查它们:

  1. HOME\.mc\config.json

  2. USERPROFILE\.mc\config.json

  3. HOMEDRIVE+HOMEPATH\.mc\config.json

You can use the --config-dir

全局选项

所有:ref:commands <minio-mc-commands> 支持以下全局选项:

--debug

启用到控制台的详细输出。

例如,以下操作将详细输出添加到 mc ls 命令:

mc --debug ls play
--config-dir

JSON 格式的配置文件的路径 mc 用于存储数据。 参见 配置文件 关于 mc 如何使用配置文件的更多信息。

--JSON

启用 JSON lines 格式化输出到控制台。

例如,以下操作将 JSON Lines 输出添加到 mc ls 命令:

mc --JSON ls play
--no-color

禁用控制台输出的内置颜色主题. 对低智能终端有用。

--quiet

禁止控制台输出。

--insecure

禁用 TLS/SSL 证书验证。 允许 TLS 连接到证书无效的服务器。 对不受信任的 S3 主机使用此选项时要小心。

--version

显示当前版本 mc.