MC文档
MinIO Client (mc) 提供了 UNIX 命令(如 ls、cat、cp、mirror、diff、find 等)的现代替代方案。它支持文件系统和 Amazon S3 兼容的云存储服务(AWS Signature v2 和 v4)。
alias manage server credentials in configuration file admin manage MinIO servers anonymous manage anonymous access to buckets and objects batch manage batch jobs cp copy objects cat display object contents diff list differences in object name, size, and date between two buckets du summarize disk usage recursively encrypt manage bucket encryption config event manage object notifications find search for objects get get s3 object to local head display first 'n' lines of an object ilm manage bucket lifecycle idp manage MinIO IDentity Provider server configuration license license related commands legalhold manage legal hold for object(s) ls list buckets and objects mb make a bucket mv move objects mirror synchronize object(s) to a remote site od measure single stream upload and download ping perform liveness check pipe stream STDIN to an object put upload an object to a bucket quota manage bucket quota rm remove object(s) retention set retention for object(s) rb remove a bucket replicate configure server side bucket replication ready checks if the cluster is ready or not sql run sql queries on objects stat show object metadata support support related commands share generate URL for temporary access to an object tree list buckets and objects in a tree format tag manage tags for bucket and object(s) undo undo PUT/DELETE operations update update mc to latest release version manage bucket versioning watch listen for object notification events
docker pull minio/mc docker run minio/mc ls play
docker pull minio/mc:edge docker run minio/mc:edge ls play
注意:上面的示例默认在 MinIO运行环境下运行mc
。要针对其他 S3 兼容服务器运行mc
,请按以下方式启动容器:
docker run -it --entrypoint=/bin/sh minio/mc
然后使用mc alias
命令。
在 GitLab CI 中使用 Docker 容器时,必须将入口点设置为空字符串。
deploy: image: name: minio/mc entrypoint: [''] stage: deploy before_script: - mc alias set minio $MINIO_HOST $MINIO_ACCESS_KEY $MINIO_SECRET_KEY script: - mc cp <source> <destination>
使用 Homebrew 安装 mc 软件包
brew install minio/stable/mc mc --help
平台 | 建筑学 | 网址 |
---|---|---|
GNU/Linux | 64位英特尔 | https://dl.min.io/client/mc/release/linux-amd64/mc |
GNU/Linux | 64位PPC | https://dl.min.io/client/mc/release/linux-ppc64le/mc |
GNU/Linux | 64位ARM | https://dl.min.io/client/mc/release/linux-arm64/mc |
Linux/s390x | S390X | https://dl.min.io/client/mc/release/linux-s390x/mc |
wget https://dl.min.io/client/mc/release/linux-amd64/mc chmod +x mc ./mc --help
平台 | 建筑学 | 网址 |
---|---|---|
微软视窗 | 64位英特尔 | https://dl.min.io/client/mc/release/windows-amd64/mc.exe |
mc.exe --help
源安装仅适用于开发人员和高级用户。如果您没有可用的 Golang 环境,请按照如何安装 Golang 进行操作。所需的最低版本是 go1.22
去安装 github.com/minio/mc@latest
如果您计划仅在 POSIX 兼容文件系统上使用mc
,则可以跳过此步骤并继续日常使用。
要添加一台或多台 Amazon S3 兼容主机,请按照以下说明操作。 mc
将其所有配置信息存储在~/.mc/config.json
文件中。
mc alias set <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> --api <API-SIGNATURE> --path <BUCKET-LOOKUP-TYPE>
<ALIAS>
只是您的云存储服务的简称。 S3 端点、访问密钥和密钥由您的云存储提供商提供。 API 签名是一个可选参数。默认情况下,它设置为“S3v4”。
路径是一个可选参数。用于指示服务器是否支持dns或path样式的url请求。它接受“on”、“off”作为有效值来启用/禁用路径样式请求。默认情况下,它设置为“auto”,SDK 会自动确定要使用的 url 查找类型。
MinIO 服务器启动横幅显示 URL、访问权限和密钥。
mc alias set minio http://192.168.1.51 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12
按照 AWS Credentials Guide 获取您的 AccessKeyID 和 SecretAccessKey。
mc alias set s3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12
注意:作为 Amazon S3 上的 IAM 用户,您需要确保该用户具有对存储桶的完全访问权限,或者为您的 IAM 用户设置以下限制策略
{"版本": "2012-10-17","声明": [ {"Sid": "AllowBucketStat","效果": "允许","操作": ["s3:HeadBucket"],"资源": "*"}, {"Sid": "AllowThisBucketOnly","效果": "允许","操作": "s3:*","资源": ["arn:aws:s3:::<your-restricted-bucket>/* ","arn:aws:s3:::<您的受限存储桶>"] } ] }
按照 Google Credentials Guide 获取您的 AccessKeyID 和 SecretAccessKey
mc alias set gcs https://storage.googleapis.com BKIKJAA5BMMU2RHO6IBB V8f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12
mc
预先配置了 https://play.min.io,别名为“play”。它是一个用于测试和开发目的的托管 MinIO 服务器。 要测试 Amazon S3,只需将“play”替换为“s3”或您在设置时使用的别名即可。
例子:
列出来自 https://play.min.io 的所有存储桶
mc ls play [2016-03-22 19:47:48 PDT] 0B my-bucketname/ [2016-03-22 22:01:07 PDT] 0B mytestbucket/ [2016-03-22 20:04:39 PDT] 0B mybucketname/ [2016-01-28 17:23:11 PST] 0B newbucket/ [2016-03-20 09:08:36 PDT] 0B s3git-test/
Make a Bucket mb
命令创建一个新的存储桶。
例子:
mc mb play/mybucket Bucket created successfully `play/mybucket`.
复制对象cp
命令将数据从一个或多个源复制到目标。
例子:
mc cp myobject.txt play/mybucket myobject.txt: 14 B / 14 B ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 100.00 % 41 B/s 0
您可以添加 shell 别名来覆盖常用的 Unix 工具。
alias ls='mc ls' alias cp='mc cp' alias cat='mc cat' alias mkdir='mc mb' alias pipe='mc pipe' alias find='mc find'
如果您使用的是 bash、zsh 或 Fish。默认情况下,Shell 补全嵌入在mc
中,要安装自动补全功能,请使用mc --autocompletion
。重新启动 shell,mc 将自动完成命令,如下所示。
mc <TAB> admin config diff find ls mirror policy session sql update watch cat cp event head mb pipe rm share stat version
请遵循 MinIO 贡献者指南
mc
的使用受 GNU AGPLv3 许可证的约束,该许可证可在 LICENSE 文件中找到。