辅箱肇 发表于 18 小时前

MinIO 介绍(2)--MinIO 客户端 mc 基本功能

<p>本文主要介绍 MinIO 客户端 mc 的基本功能;文中所使用到的软件版本:mc RELEASE.2025-07-21T05-28-08Z、Centos 8.5.2111。</p>
<h2>1、mc 介绍</h2>
<h3>1.1、mc 安装</h3>
<p>这里主要介绍 mc 在 Linux 环境下的部署;可通过如下地址下载 mc 二进制包:</p>

https://dl.minio.org.cn/client/mc/release/linux-amd64/mc
https://dl.minio.io/client/mc/release/linux-amd64/mc --这个地址下载的版本比较新

<h3>1.2、mc 版本与 MinIO 服务器对齐</h3>
<p>MinIO 客户端与 MinIO 服务器的发布是分开的。<br>为了最佳功能和兼容性,请使用与 MinIO 服务器版本相近的 MinIO 客户端版本。 例如,与 MinIO 服务器版本同一天或之后发布的 MinIO 客户端版本。</p>
<h3>1.3、mc 配置文件</h3>
<p>mc 使用一个 JSON 格式的配置文件来存储信息,对于 Linux 和 macOS,默认的配置文件位置是 ~/.mc/config.json,在使用 mc 时也可以通过 --config-dir 参数指定配置文件位置。</p>
<h3>1.4、模式匹配</h3>
<p>某些命令和标记允许模式匹配。 启用后,模式可以包含以下任一通配符来替换字符:</p>
<ul>
<li>* 表示要匹配的字符串,可以是中间的字符串,也可以是末尾的字符串。</li>
<li>? 来表示一个字符。</li>
















</ul>
<h3>1.5、全局选项</h3>
<p>--config-dir  指定配置文件位置<br>--debug  向控制台输出详细信息<br>--insecure  禁用 TLS/SSL 证书验证<br>--JSON  以 JSON 格式向控制台输出数据<br>--no-color  禁用控制台输出颜色<br>--quiet  抑制控制台输出<br>--version  显示 mc 的当前版本<br>--help  显示帮助信息</p>
<h2>2、mc 基本功能</h2>
<h3>2.1、mc alias</h3>
<p>别名相关操作。</p>
<h4>2.1.1、mc alias list</h4>
<p>列出本地 mc 配置中的所有别名信息。</p>

mc alias list

<h4>2.1.2、mc alias remove</h4>
<p>从本地 mc 配置中移除一个已存在的别名。</p>

mc alias remove ALIAS

<h4>2.1.3、mc alias set</h4>
<p>向本地 mc 配置中添加或更新别名。</p>

mc alias set \
   [--api "string"]                           \
   [--path "string"]                        \
   ALIAS                                    \
   URL                                        \
   ACCESSKEY                                  \
   SECRETKEY

<p>ALIAS  别名<br>URL  MinIO 服务端 URL<br>ACCESSKEY  访问密钥<br>SECRETKEY  秘密密钥<br>--api  连接到 MinIO 服务时使用的签名方法,支持:S3v4 (Default)、S3v2<br>--path  是否启用存储桶路径查找功能,支持以下值:auto (Default)、on、off</p>
<p>如:</p>

./mc alias set myMinIO http://localhost:9000 minioadmin minioadmin

<h3>2.2、mc cat</h3>
<p>查看文件内容。</p>

mc cat         \
   ALIAS          \
   [--enc-c "value"]         \
   [--part-number "int"]   \
   [--rewind]                \
   [--tail "int"]            \
   [--version-id "string"]   \
   [--offset "int"]          \
   [--version-id "string"]   \
   [--zip]

<p>如:</p>

./mc cat myMinio/test/abc/a.txt

<h3>2.3、mc cp</h3>
<p>将对象从一个 MinIO 复制到另一个 MinIO,或者从 MinIO 复制到本地文件系统,或者从本地文件系统复制到 MinIO。</p>

mc cp                                          \
   [--attr "string"]                                       \
   [--disable-multipart]                                     \
   [--enc-kms "string"]                                    \
   [--enc-s3 "string"]                                       \
   [--enc-c "string"]                                        \
   [--legal-hold "on"]                                       \
   [--limit-download string]                                 \
   [--limit-upload string]                                 \
   [--md5]                                                   \
   [--newer-than "string"]                                 \
   [--older-than "string"]                                 \
   [--preserve]                                              \
   [--recursive]                                             \
   [--retention-mode "string" --retention-duration "string"] \
   [--rewind "string"]                                       \
   [--storage-class "string"]                              \
   [--tags "string"]                                       \
   [--version-id "string"]                                 \
   [--zip]                                                   \
   SOURCE                                        \
   TARGET

<p>如:</p>

./mc cp ~/data.json myMinio/test/abc--上传本地文件到 MinIO
./mc cp --recursive ~/xyz my/test/abc --上传本地目录到 MinIO

./mc cp myMinio/test/abc/data.json ~--从MinIO下载文件到本地磁盘
./mc cp myMinio/test/abc/data.json ~/data.json--从MinIO下载文件到本地磁盘

./mc cp --recursive myMinio/test/abc/xyz ~-- 从MinIO下载目录到本地磁盘

<h3>2.4、mc diff</h3>
<p>比较两个目录(MinIO 目录或本地目录) 的差别,该命令只列出那些缺失或在大小上不同的对象,不比较对象的内容。</p>

mc diff SOURCE TARGET

<p>如:</p>

./mc diff myMinio/test/abc/ ~/abc

<h3>2.5、mc du</h3>
<p>统计桶或目录(MinIO 目录或本地目录)的磁盘使用情况。</p>

mc du      \
   [--depth]             \
   [--recursive]         \
   [--rewind]            \
   [--versions]          \
   ALIAS

<p>如:</p>

./mc du myMinio/test/abc

<h3>2.6、mc find</h3>
<p>查找文件或目录。</p>

mc find    \
[--exec "string"]       \
[--ignore "string"]   \
[--larger "string"]   \
[--maxdepth "string"]   \
[--metadata "string"]   \
[--name "string"]       \
[--newer-than "string"] \
[--older-than "string"] \
[--path "string"]       \
[--print "string"]      \
[--regex "string"]      \
[--smaller "string"]    \
[--tags "string"]`      \
[--versions]            \
[--watch]               \
ALIAS

<p>如:</p>

./mc find --name *.txt myMinio/test

<h3>2.7、mc get</h3>
<p>从 MinIO 下载文件到本地。</p>

mc get      \
   SOURCE                   \
   TARGET                   \
   [--enc-c string]         \
   [--version-id, --vid value]

<p>如:</p>

./mc get myMinio/test/abc/a.txt /home/mongo

<h3>2.8、mc head</h3>
<p>显示文件最上面 n 行数据。</p>

mc head       \
   [--lines int]            \
   [--rewind "string"]      \
   [--version-id "string"]\
   [--enc-c "string"]       \
   ALIAS

<p>如:</p>

./mc head -n 10 myMinio/test/abc/a.txt

<h3>2.9、mc ls</h3>
<p>列出 Minio 上的文件或目录。</p>

mc ls\
   [--incomplete]\
   [--recursive]   \
   [--rewind]      \
   [--versions]    \
   [--summarize]   \
   ALIAS

<p>如:</p>

./mc ls myMinio/test/abc

<h3>2.10、mc mb</h3>
<p>创建一个新的桶或目录,与 Linux 目录 mkdir -p 类似。</p>

mc mb   \
   [--ignore-existing]\
   [--region "string"]\
   [--with-lock]      \
   [--with-versioning]\
   ALIAS

<p>如:</p>

./mc mb myMinio/test-bucket/abc

<h3>2.11、mc mv</h3>
<p>移动 MinIO 或主机上的文件或目录,重命名 MinIO 或主机上的文件。</p>

mc mv         \
[--attr "string"]         \
[--disable-multipart]       \
[--enc-kms "string"]      \
[--enc-s3 "string"]         \
[--enc-c "string"]          \
[--limit-download string]   \
[--limit-upload string]   \
[--newer-than "string"]   \
[--older-than "string"]   \
[--preserve]                \
[--recursive]               \
[--storage-class "string"]\
SOURCE           \
TARGET

<p>如:</p>

./mc mv myMinio/test/abc/a.txt myMinio/test2/abc

<h3>2.12、mc ping</h3>
<p>检查 MinIO 的存活情况。</p>

mc ping         \
   TARGET                     \
   [--count, -c value]      \
   [--error-count, -e value]\
   [--interval, -i value]   \
   [--distributed, -a value]

<p>如:</p>

mc ping myMinio --count 5

<h3>2.13、mc put</h3>
<p>上传文件到 MinIO。</p>

mc put      \
   TARGET                   \
   [--checksum value]       \
   [--disable-multipart]    \
   [--enc-kms value]      \
   [--enc-s3 value]         \
   [--if-not-exists]      \
   [--parallel, -P integer] \
   [--part-size, -s string]

<p>如:</p>

./mc put ~/a.txt myMinio/test

<h3>2.14、mc rb</h3>
<p>删除 MinIO 上的桶。</p>

mc rb \
   --force      \
   [--dangerous]\
   ALIAS

<p>如:</p>

./mc rb --force myMinio/test2 #桶不为空需要添加--force参数

<h3>2.15、mc ready</h3>
<p>检查 MinIO 的状态。</p>

mc ready\
       TARGET         \
       [--cluster-read] \
       [--maintenance]

<p>如:</p>

./mc ready myMinio

<h3>2.16、mc rm</h3>
<p>删除 MinIO 上文件或目录。</p>

mc rm         \
   [--bypass]               \
   [--dangerous]            \
   [--dry-run]            \
   [--force]*               \
   [--incomplete]         \
   [--newer-than "string"]\
   [--non-current]          \
   [--older-than "string"]\
   [--recursive]            \
   [--rewind "string"]      \
   [--stdin]                \
   [--version-id "string"]* \
   [--versions]             \
   ALIAS

<p>--force 允许使用以下任何参数运行 mc rm</p>
<ul>
<li>--recursive</li>
<li>--versions</li>
<li>--stdin</li>
</ul>
<p>如:</p>

./mc rm myMinio/test3/abc/a.txt --删除文件
./mc rm --force --recursive myMinio/test3/abc --删除目录

<h3>2.17、mc stat</h3>
<p>显示 MinIO 存储桶或其中对象的详细信息。</p>

mc stat      \
   [--enc-c "value"]         \
   [--no-list]               \
   [--recursive]             \
   [--rewind "string"]       \
   [--versions]            \
   [--version-id "string"]*\
   ALIAS

<p>如:</p>

./mc stat myMinio/test
./mc stat --recursive myMinio/test/abc

<h3>2.18、mc tag</h3>
<p>标签相关操作。</p>
<h4>2.18.1、mc tag set</h4>
<p>设置 MinIO 中桶或文件的标签。</p>

mc tag set   \
   [--rewind "string"]       \
   [--versions]            \
   [--version-id "string"]*\
   ALIAS                     \
   "TAGS"

<p>如:</p>

./mc tag set myMinio/test "a=1&b=2"
./mc tag set myMinio/test/a.txt "a=1&b=2"

<h4>2.18.2、mc tag list</h4>
<p>列出 MinIO 中桶或文件的标签。</p>

mc tag set   \
   [--rewind "string"]       \
   [--versions]            \
   [--version-id "string"]*\
   ALIAS

<p>如:</p>

./mc tag list myMinio/test/abc
./mc tag list myMinio/test/a.txt

<h4>2.18.3、mc tag remove</h4>
<p>删除 MinIO 中桶或文件的标签。</p>

mc tag remove\
   [--rewind "string"]       \
   [--versions]            \
   [--version-id "string"]*\

<p>如:</p>

./mc tag remove myMinio/test
./mc tag remove myMinio/test/a.txt

<h2> </h2>
<p> </p>
<p>参考:https://min-io.cn/docs/minio/linux/reference/minio-mc.html。</p>
<p> </p><br>来源:程序园用户自行投稿发布,如果侵权,请联系站长删除<br>免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: MinIO 介绍(2)--MinIO 客户端 mc 基本功能