MinIO客户端mc使用

article/2025/9/23 11:13:02

官网:

  • 英文网址(最好查看英文网址):https://min.io/
  • 中文网址(没有及时更新,容易被坑):http://www.minio.org.cn/

使用的 minio 版本是:RELEASE.2021-11-*

一、MinIO 客户端工具安装

MinIO 提供客户端工具访问和操作服务端。MinIO 客户端工具 mc(minio client),提供了类似 unix 的命令去操作服务端。mc 相关命令列表如下所示(请查看英文官网):

ls       列出文件和文件夹。
mb       创建一个存储桶或一个文件夹。
cat      显示文件和对象内容。
pipe     将一个STDIN重定向到一个对象或者文件或者STDOUT。
share    生成用于共享的URL。
cp       拷贝文件和对象。
mirror   给存储桶和文件夹做镜像。
find     基于参数查找文件。
diff     对两个文件夹或者存储桶比较差异。
rm       删除文件和对象。
events   管理对象通知。
watch    监听文件和对象的事件。
policy   管理访问策略。
session  为cp命令管理保存的会话。
config   管理mc配置文件。
update   检查软件更新。
version  输出版本信息。

下载安装 MinIO Client的方式好几种,这里基于 Linux和 Windows两种安装方式,更多查看官网。
在这里插入图片描述

1、基于 Linux安装mc

[root@centos7 ~]# wget https://dl.min.io/client/mc/release/linux-amd64/mc
[root@centos7 ~]# ls
abc  anaconda-ks.cfg  manpages-zh-1.5.2  mc  minio
[root@centos7 ~]# chmod +x ./mc
[root@centos7 ~]# ls
abc  anaconda-ks.cfg  manpages-zh-1.5.2  mc  minio
[root@centos7 ~]# ./mc --help
NAME:mc - MinIO Client for cloud storage and filesystems.....[root@centos7 /]# mc --help
-bash: mc: 未找到命令

下载的文件在 ~目录中, 每次都要进入 ~目录或者指定mc所在目录,才能使用。
如果我们想在任何目录中使用 mc。把 mc文件放到 /usr/local/sbin/目录中,就可以了。

[root@centos7 ~]# mv ./mc /usr/local/sbin/
[root@centos7 /]# mc --help
NAME: ...

2、基于 Windows安装mc

如果我们想在任何目录中使用 mc。把下载好的 mc.exe文件放到 C:\Windows\System32目录中,就可以了。
在这里插入图片描述

安装 MinIO Client就是这么简单。
默认的配置目录在C盘,可以通过--config-di参数自定义配置目录。

查看命令使用语法:

  • 直接数据命令回车即可,比如:mc config
  • 使用 – help参数,比如:mc config – help

二、mc命令使用

这里简单操作几个命令。
在这里插入图片描述

1、mc config命令 - 管理配置文件

D:\DownUpLoadTempFiles>mc config
NAME:mc config - configure MinIO clientUSAGE:mc config COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]COMMANDS:host  add, remove and list hosts in configuration fileFLAGS:--config-dir value, -C value  path to configuration folder (default: "C:\\Users\\xxx\\mc")--quiet, -q                   disable progress bar display--no-color                    disable color theme--json                        enable JSON lines formatted output--debug                       enable debug output--insecure                    disable SSL certificate verification--help, -h                    show help

第一次查看,没有我们的 minio服务端

D:\DownUpLoadTempFiles>mc config host ls
...

1.1 添加 MinIO服务

mc config host add docker_minio1 http://ip:9000 用户名 密码

D:\DownUpLoadTempFiles>mc config host add docker_minio1 http://xxx.xxx.xxx.xxx:9000 用户名 密码
Added `doker_minio1` successfully.D:\DownUpLoadTempFiles>mc ls docker_minio1
[2021-11-21 16:11:27 CST]     0B test1/

1.2 删除 MinIO服务

mc config host remove doker_minio1

D:\DownUpLoadTempFiles>mc config host remove docker_minio1
Removed `doker_minio1` successfully.

2、ls命令 - 列出对象

ls命令列出文件、对象和存储桶。

D:\DownUpLoadTempFiles>mc ls doker_minio1
[2021-11-21 16:11:27 CST]     0B test1/

3、mb命令 - 创建存储桶

mb命令在对象存储上创建一个新的存储桶。MinIO对每个用户创建的存储桶数量没有限制。
注意必须带上 host名字

## 在我们的 docker_test1 服务端创建一个 btest2桶
D:\DownUpLoadTempFiles>mc mb docker_minio1/btest2
Bucket created successfully `docker_minio1/btest2`.D:\DownUpLoadTempFiles>mc ls docker_minio1
[2021-11-21 23:23:48 CST]     0B btest2/
[2021-11-21 16:11:27 CST]     0B test1/

3.1 递归创建桶

不需要我们加参数,和普通创建单个桶一样,MinIO 会递归创建。

D:\DownUpLoadTempFiles>mc mb docker_minio1/btest3/2021/11/21
Bucket created successfully `docker_minio1/btest3/2021/11/21`.D:\DownUpLoadTempFiles>mc tree docker_minio1
docker_minio1
├─ btest2
├─ btest3
│  └─ 2021
│     └─ 11
│        └─ 21
└─ test1

4、rm命令 - 删除存储桶和对象。

注意必须带上 host名字

用法:mc rm [FLAGS] TARGET [TARGET ...]FLAGS:--help, -h                       显示帮助。--recursive, -r              递归删除。--force              强制执行删除操作。--prefix             删除批配这个前缀的对象。--incomplete, -I      删除未完整上传的对象。--fake               模拟一个假的删除操作。--stdin              从STDIN中读对象列表。--older-than value               删除N天前的对象(默认是0天)。

删除一个存储桶并递归删除里面所有的内容。由于这个操作太危险了,你必须传--force参数指定强制删除。

D:\DownUpLoadTempFiles>mc rb  docker_minio1/btest2
Removed `docker_minio1/btest2` successfully.
D:\DownUpLoadTempFiles>mc ls docker_minio1
[2021-11-21 16:11:27 CST]     0B test1/# bucket不为空,可以强制删除 慎用
D:\DownUpLoadTempFiles>mc rb --recursive --force docker_minio1/btest2

5、cp命令 - 拷贝对象

cp命令拷贝一个或多个源文件目标输出。所有到对象存储的拷贝操作都进行了MD4SUM checkSUM校验。可以从故障点恢复中断或失败的复制操作。

USAGE:mc cp [FLAGS] SOURCE [SOURCE...] TARGETFLAGS:--rewind value                     roll back object(s) to current version at specified time--version-id value, --vid value    select an object version to copy--recursive, -r                    copy recursively 递归拷贝--older-than value                 copy object(s) older than N days (default: 0)--newer-than value                 copy object(s) newer than N days (default: 0)--storage-class value, --sc value  set storage class for new object(s) on target--preserve,-a                      preserve file system attributes and bucket policy rules on target bucket(s)--attr                             add custom metadata for the object (format: KeyName1=string;KeyName2=string)--continue, -c                     create or resume copy session--encrypt value                    encrypt/decrypt objects (using server-side encryption with server managed keys)--encrypt-key value                encrypt/decrypt objects (using server-side encryption with customer provided keys)--tags value                       apply tags to the uploaded objects (eg. key=value&key2=value2, etc)--help, -h                         show helpENVIRONMENT VARIABLES:MC_ENCRYPT:      list of comma delimited prefixesMC_ENCRYPT_KEY:  list of comma delimited prefix=secret values

注意下面操作必须带上 host名字

5.1 下载 minio文件到本地

D:\DownUpLoadTempFiles>mc ls docker_minio1
[2021-11-21 16:11:27 CST]     0B test1/D:\DownUpLoadTempFiles>mc cp docker_minio1/test1/6.8.7.jpg  D:\TempFiles
.../test1/6.8.7.jpg:  187.17 KiB / 187.17 KiB [=========================================================] 8.09 MiB/s 0s

5.2 上传本地文件到 minio的桶中

D:\DownUpLoadTempFiles>mc cp D:\DownUpLoadTempFiles\1027秋.zip  docker_minio1/test1
...s\1027秋.zip:  20.50 MiB / 20.50 MiB [============================================================] 50.08 MiB/s 0sD:\DownUpLoadTempFiles>mc ls docker_minio1/test1
[2021-11-21 23:17:19 CST]  20MiB 1027秋.zip
[2021-11-21 16:11:41 CST] 187KiB 6.8.7.jpg

5.3 复制 minio文件到 minio另一个桶(同一个host)

这里复制 桶 test1中的文件到 桶 btest2中

D:\DownUpLoadTempFiles>mc cp docker_minio1/test1/1027秋.zip docker_minio1/btest2
...1/1027秋.zip:  20.50 MiB / 20.50 MiB [===========================================================] 175.00 MiB/s 0s
D:\DownUpLoadTempFiles>mc ls docker_minio1/btest2
[2021-11-21 23:33:05 CST]  20MiB 1027秋.zip

5.4 复制 minio文件到 minio的桶中(不同host)

添加另一个 minio服务,查看桶。

D:\DownUpLoadTempFiles>mc config host add linux_minio1 http://xxx xxx xxx
Added `linux_minio1` successfully.D:\DownUpLoadTempFiles>mc ls linux_minio1
[2021-11-21 23:49:24 CST]     0B b19test/

我们把 docker_minio1的 btest3桶下的文件批量递归 复制到 linux_minio1的 b19test桶中。
注意: 必须指定目的 host的已存在桶。

D:\DownUpLoadTempFiles>mc cp --recursive docker_minio1/btest3 linux_minio1/b19test
...11/21/初三.ace:  102.96 MiB / 102.96 MiB [==========================================================] 66.26 MiB/s 1sD:\DownUpLoadTempFiles>mc tree --files linux_minio1/
linux_minio1/
└─ b19test└─ btest3└─ 2021└─ 11├─ 20│  └─ 0817.ace└─ 21├─ 100元.jpg└─ 初三.aceD:\DownUpLoadTempFiles>mc cp --recursive docker_minio1/btest3 linux_minio1/b19test2
mc: <ERROR> Failed to copy `http://xxx:9000/btest3/2021/11/20/0817.ace`. Bucket `b19test2` does not exist.
mc: <ERROR> Failed to copy `http://xxx:9000/btest3/2021/11/21/100元.jpg`. Bucket `b19test2` does not exist.
mc: <ERROR> Failed to copy `http://xxx:9000/btest3/2021/11/21/初三.ace`. Bucket `b19test2` does not exist.

6、tree命令 - 以树格式列出桶和目录

使用 --files标志在列表中包含文件/对象。

D:\DownUpLoadTempFiles>mc tree docker_minio1
docker_minio1
├─ btest2
├─ btest3
│  └─ 2021
│     └─ 11
│        ├─ 20
│        └─ 21
└─ test1D:\DownUpLoadTempFiles>mc tree --files docker_minio1
docker_minio1
├─ btest2
│  └─ 1027秋.zip
├─ btest3
│  └─ 2021
│     └─ 11
│        ├─ 20
│        │  └─ 0817.ace
│        └─ 21
│           ├─ 100元.jpg
│           └─ 初三.ace
└─ test1├─ 1027秋.zip└─ 6.8.7.jpg

7、du命令 - 递归地汇总磁盘使用情况

D:\DownUpLoadTempFiles>mc du docker_minio1
82MiBD:\DownUpLoadTempFiles>mc du docker_minio1/test1
21MiB   test1

更多 mc命令和使用详情,请查看官网。

– 求知若饥,虚心若愚。


http://chatgpt.dhexx.cn/article/gT6XO78P.shtml

相关文章

MinIO的介绍以及简单的使用

什么是MinIO MinIO是在GUN Affero通用公共许可证 v3.0 下发布的高性能对象存储.他与AmazonS3云存储服务API兼容.使用MinIO为机器学习,分析和应用程序数据工作负载构建高性能基础架构. MinIO是一个高兴能的对象存储,什么是对象存储(Object Storage Service),对象存储是支持海量用…

【LWIP】stm32用CubeMX(6.4版)配置LwIP+Ping+TCPclient+TCPserver发送信息到PC(操作部分)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言零、更新&#xff08;2022.08.07&#xff09;一、实验平台二、手把手全程配置步骤1.配置电脑环境2.配置cubeMX3.配置MDK&#xff08;Keil5&#xff09;4.配置TC…

minicap介绍

从WEB 端批量移动设备管理控制工具 STF 的环境搭建和运行文章了解到STF这个工具&#xff0c;然后试用了一下。最近在做一个测试工具&#xff0c;发现Android原生的截图工具截图非常缓慢&#xff0c;然后想起了stf工具中截图非常快&#xff0c;甚至连执行monkey的动作都能在web端…

​ MinIO​使用

引言&#xff1a;为什么要使用minio MinIO是对象存储服务,它基于Apache License 开源协议&#xff0c;兼容Amazon S3云存储接口。适合存储非结构化数据&#xff0c;如图片&#xff0c;音频&#xff0c;视频&#xff0c;日志等。对象文件最大可以达到5TB。类似于腾讯的oss或者阿…

MiniApp Dev

小程序开发 MiniApp Dev 2_WinkeyTseng_YongTai的博客-CSDN博客 MiniApp Dev 3_WinkeyTseng_YongTai的博客-CSDN博客 MiniApp Dev 4_spencer_tseng的博客-CSDN博客

MinIO的简单实用(一)

一、什么是MinIO MinIO是在GNU Affero 通用公共许可证v3.0下发布的高性能对象存储。它与AmazonS3云存储服务API兼容。使用MinIO为机器学习、分析和应用程序工作负载构建高性能基础架构。 MinIO是高性能对象存储&#xff0c;什么是对象存储&#xff08;Object Storage Service&…

取代奶瓶Minidwep-gtk破解WPA 全攻略

原文地址为&#xff1a; 取代奶瓶Minidwep-gtk破解WPA 全攻略 取代奶瓶Minidwep-gtk 破 WPA 全攻略 目录 1、 CDlinux 下使用 minidwepgtk 获取握手包并使用自带的字典破解 2、 自带的字典破解不出密码时使用 U 盘外挂字典继续暴力破解密码 3、 将握手包拷贝到 Windows 系统下…

Minidwep-gtk字典 破 WPA

取代奶瓶Minidwep-gtk 破 WPA 全攻略 目录 1、 CDlinux 下使用 minidwepgtk 获取握手包并使用自带的字典破解 2、 自带的字典破解不出密码时使用 U 盘外挂字典继续暴力破解密码 3、 将握手包拷贝到 Windows 系统下使用 ewsa 工具高速破解密码 4、破解 WPA 加密“握手包”字典的…

无线密码破解----minidwep-gtk的PIN破解方法

原文地址为&#xff1a; 无线密码破解----minidwep-gtk的PIN破解方法 使用虚拟机对minidwep-gtk进行PIN破解 用CDLINUX支持8187和3070_30211版.iso系统PJpin码 1.用虚拟机的好处是方便&#xff0c;可以一边破解&#xff0c;一边上网做其他事情。 虚拟机的安装非常简单&#xf…

完整安装minidwep-gtk教程

完整安装minidwep-gtk教程 一&#xff1a;安装Aircrack-ng 安装依赖软件包 sudo apt-get install build-essential libssl-dev iw 下载软件包并解压缩 wget http://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz tar-zxvf aircrack-ng-1.1.tar.gz cd aircrack-ng-1.1 …

移动网优大神VoLTE学习笔记(五):被叫信令流程

文/张阳&#xff0c;本文来源于微信公众号&#xff1a;网优小谈&#xff08;wireless_talk&#xff09; VoLTE的被叫信令流程相比主叫信令流程要复杂一点&#xff0c;一般通信系统的被叫信令流程相比主叫信令流程都要复杂一点&#xff0c;因为往往不知道用户的位置需要进行相应…

对SDP的理解

一、SDP 是什么 SDP&#xff08;Session Description Protocal&#xff09;会话描述协议 主要用于两个会话开始之前的媒体协商&#xff0c;用于建立会话的。 这里要分清会话&#xff1a;SIP协议也是只是用来建立会话的&#xff0c;真正的会话说白了是媒体传输&#xff0c;而在…

RTSP服务器:RTP传输AAC流

工作流程&#xff1a; 1&#xff09;读取ADTS头&#xff08;7字节&#xff09;&#xff0c;解析得到aac帧的信息&#xff08;频率&#xff0c;声道&#xff0c;帧长度&#xff09; 2&#xff09;读取aac原始数据块&#xff0c;使用RTP打包aac原始数据 RTP打包h264码流时&…

webrtc会话建立

WebRTC SDP 解析 还我漂漂拳哒哒哒关注 0.5032019.03.06 13:01:21字数 1,954阅读 3,150 sdp&#xff08;Session Description Protocol&#xff09;是一种会话描述协议&#xff0c;属于文本协议&#xff0c;即WebRTC中常说的信令&#xff08;Signalling&#xff09;&#xff…

H.264视频的RTP有效负载格式 (RFC-3984)

RFC文档链接 本备忘录的状态 略 摘要 本备忘录描述了ITU-T建议的H.264视频编解码器和技术上相同的ISO/IEC国际标准14496-10视频编解码器的RTP有效载荷格式。RTP有效载荷格式允许在每个RTP有效载荷中对H.264视频编码器产生的一个或多个网络抽象层单元&#xff08;NALU&#…

音视频协议-RTP协议打包

目录 H264打包RTP的方法 RTP打包AAC 1. H264打包RTP的方法 RTP的特点不仅仅支持承载在UDP上&#xff0c;这样利于低延迟音视频数据的传输&#xff0c;另外一个特点是它允许通过其它协议接收端和发送端协商音视频数据的封装和编解码格式&#xff0c;这样固定头的playload typ…

webRTC原理及信令简介

WebRtc基本概念及协议介绍 术语 Signaling channel(信令通道) a) 一种资源&#xff0c;使应用程序可以通过交换信令消息来发现&#xff0c;建立&#xff0c;控制和终止对等连接 b) 信令消息是两个应用程序相互交换以建立对等连接的元数据。该元数据包括本地媒体信息&#xff0…

国网B接口调阅实时视频(INVITE)接口描述和消息示例

前面三篇blog分别介绍国网B接口注册、资源上报和资源信息获取&#xff0c;今天过一下国网B接口调阅实时视频相关的接口描述和消息示例&#xff0c;做过GB28181设备接入的都知道&#xff0c;国网B接口调阅实时视频流程和GB28181的基本一致的&#xff0c;区别在于SDP的一些参数描…

SIP协议之PRACK机制

SIP PRACK&#xff08;Provisional Response ACKnowledgement&#xff09;是由SIP的扩展协议RFC3262定义的&#xff0c;旨在为SIP的临时应答提供传输的可靠性。扩展机制使用选项100rel和临时应答方法PRACK实现。该机制同SIP协议中的2xx对INVITE应答的可靠机制类似。 流程图&am…

HackTheBox: Arctic靶场

废话不多说直接开始&#xff1a; 第一步是在计算机上运行NMAP&#xff1a; # Nmap 7.80 scan initiated Sat Sep 19 14:54:46 2020 as: nmap -sV -O -sC -p- -oN scan 10.10.10.11 Nmap scan report for 10.10.10.11 Host is up (0.021s latency). Not shown: 65532 filtered…