目录

安装MC

64-bit Intel

64-bit PPC

ARM64

连接MinIO

常规操作

查看MinIO信息

查看本地配置的MinIO

创建存储桶

查看存储桶

上传文件

上传目录

查看存储桶里面的内容

下载文件

下载目录

生成分享链接

删除文件

删除目录

删除存储桶

删除没有文件的存储桶

删除有文件的存储桶


 

       MinIO客户端 mc 命令行工具提供了一个现代化的替代方案, 支持文件系统和与Amazon S3兼容的云存储服务,适用于UNIX命令如 ls、 cat、 cp、 mirror 和 diff。

        mc 命令行工具是为了与 AWS S3 API 兼容而构建的,并且已经过测试, 以确保在与 MinIO 和 AWS S3 配合使用时,功能和行为符合预期。

        MinIO 不对其他 S3 兼容服务提供任何保证,因为它们的 S3 API 实现是 未知的,因此不受支持。尽管 mc 命令 可能 如文档中所 述工作,但任何此类使用都是您自己的风险。

        mc 的以下语法:

mc [GLOBALFLAGS] COMMAND --help

安装MC

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

ARM64

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

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

mc --help

连接MinIO

MinIO在启动的时候会有提示

CLI: https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart
   $ mc alias set 'myminio' 'http://192.168.207.131:9000' 'minioadmin' 'minioadmin'

使用提供的mc命令即可连接上

mc alias set 'myminio' 'http://192.168.207.131:9000' 'minioadmin' 'minioadmin'

[root@bogon ~]# mc alias set 'myminio' 'http://192.168.207.131:9000' 'minioadmin' 'minioadmin'
mc: Configuration written to `/root/.mc/config.json`. Please update your access credentials.
mc: Successfully created `/root/.mc/share`.
mc: Initialized share uploads `/root/.mc/share/uploads.json` file.
mc: Initialized share downloads `/root/.mc/share/downloads.json` file.
Added `myminio` successfully.

常规操作

查看MinIO信息

[root@bogon ~]# mc admin info myminio
●  192.168.207.131:9000
   Uptime: 2 minutes 
   Version: 2024-05-01T01:11:10Z
   Network: 1/1 OK 
   Drives: 1/1 OK 
   Pool: 1

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

1 drive online, 0 drives offline

查看本地配置的MinIO

# 刚才我们连接的时候设置的是myminio,后续操作的时候都是使用myminio这个配置
[root@bogon ~]# mc config host list
gcs    
  URL       : https://storage.googleapis.com
  AccessKey : YOUR-ACCESS-KEY-HERE
  SecretKey : YOUR-SECRET-KEY-HERE
  API       : S3v2
  Path      : dns

local  
  URL       : http://localhost:9000
  AccessKey : 
  SecretKey : 
  API       : 
  Path      : auto

myminio
  URL       : http://192.168.207.131:9000
  AccessKey : minioadmin
  SecretKey : minioadmin
  API       : s3v4
  Path      : auto

play   
  URL       : https://play.min.io
  AccessKey : Q3AM3UQ867SPQQA43P2F
  SecretKey : zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG
  API       : S3v4
  Path      : auto

s3     
  URL       : https://s3.amazonaws.com
  AccessKey : YOUR-ACCESS-KEY-HERE
  SecretKey : YOUR-SECRET-KEY-HERE
  API       : S3v4
  Path      : dns

创建存储桶

# 这条命令的意思是创建一个叫test的存储桶
# 刚才我们使用mc连接minio的时候设置的alias是myminio,所以我们需要加上
[root@bogon ~]# mc mb myminio/test
Bucket created successfully `myminio/test`.

查看存储桶

# 查看我们连接的myminio里面有哪些存储桶
[root@bogon ~]# mc ls myminio
[2024-05-16 04:55:18 EDT]     0B test/

上传文件

# 使用cp或者put都可以实现上传
# 将本地文件复制到test这个存储桶
[root@bogon ~]# mc cp /etc/redhat-release myminio/test
...hat-release: 37 B / 37 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 1.95 KiB/s 0s

# put有--parallel 8参数,表示并行上传8部分,默认是4部分,可以自定义
# put有--part-size 20MiB参数,表示文件分成每个20MiB的部分
[root@bogon ~]# mc put /etc/hosts myminio/test
/etc/hosts:     158 B / 158 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 20.34 KiB/s 0s

上传目录

# 将本地目录复制到test这个存储桶
[root@bogon ~]# mc cp -r /etc myminio/test
...groups.conf: 30.03 MiB / 30.03 MiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 7.88 MiB/s 3s

查看存储桶里面的内容

[root@bogon ~]# mc ls myminio/test
[2024-05-16 05:01:09 EDT]    37B STANDARD redhat-release
[2024-05-16 05:12:51 EDT]     0B etc/

下载文件

# 将test存储桶下的redhat-release文件下载到本地的/opt目录下
[root@bogon ~]# mc get myminio/test/redhat-release /opt
...hat-release: 37 B / 37 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 3.32 KiB/s 0s

[root@bogon ~]# ls /opt/
redhat-release

下载目录

# 将test存储桶下的etc目录下载到本地的/opt目录下
[root@bogon ~]# mc cp -r myminio/test/etc /opt/
...groups.conf: 30.03 MiB / 30.03 MiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 15.33 MiB/s 1s

[root@bogon ~]# ls /opt/
etc  redhat-release

生成分享链接

# 分享test存储桶下的hosts文件
# --expire指定过期时间,1h表示1小时
[root@bogon ~]# mc share download myminio/test/hosts --expire 1h
URL: http://192.168.207.131:9000/test/hosts
Expire: 1 hours 0 minutes 0 seconds
Share: http://192.168.207.131:9000/test/hosts?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=minioadmin%2F20240516%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240516T095817Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=ae7da3b67d4f8577bd654cde43b1837b4ed199f293337acaee396b67f776e9f2

删除文件

# 删除test存储桶下的redhat-release文件
[root@bogon ~]# mc rm myminio/test/redhat-release
Removed `myminio/test/redhat-release`.

删除目录

# 删除test存储桶下的etc目录
[root@bogon ~]# mc rm myminio/test/etc --recursive --force

删除存储桶

删除没有文件的存储桶

# 删除test存储桶
[root@bogon ~]# mc rb myminio/test

删除有文件的存储桶

[root@bogon ~]# mc rb myminio/test --force

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐