K3s 集群 minio 客户端使用手册

minio 参数

MinIO Client (mc)为ls,cat,cp,mirror,diff,find等UNIX命令提供了一种替代方案。它支持文件系统和兼容Amazon S3的云存储服务(AWS Signature v2和v4)。

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

客户端获取

  • Docker稳定版
docker pull minio/mc
docker run minio/mc ls play
  • Docker尝鲜版
docker pull minio/mc:edge
docker run minio/mc:edge ls play

注意: 上述示例默认使用MinIO演示环境做演示,如果想用mc操作其它S3兼容的服务,采用下面的方式来启动容器:

docker run -it --entrypoint=/bin/sh minio/mc

然后使用mc config命令。

  • Homebrew (macOS)
    使用Homebrew安装mc。
brew install minio/stable/mc
mc --help
  • GNU/Linux 客户端
平台 CPU架构 URL
GNU/Linux 64-bit Intel https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
./mc --help
  • Microsoft Windows 客户端
平台 CPU架构 URL
Microsoft Windows 64-bit Intel https://dl.min.io/client/mc/release/windows-amd64/mc.exe
mc.exe --help

minio 命令大全

ls - 列出存储桶和对象 mb - 创建存储桶 cat - 合并对象
cp - 拷贝对象 rm - 删除对象 pipe - Pipe到一个对象
share - 共享 mirror - 存储桶镜像 find - 查找文件和对象
diff - 比较存储桶差异 policy - 给存储桶或前缀设置访问策略
config - 管理配置文件 watch - 事件监听 events - 管理存储桶事件
update - 管理软件更新 version - 显示版本信息
  • ls命令 - 列出对象
    ls命令列出文件、对象和存储桶。使用--incomplete flag可列出未完整拷贝的内容。
# 列出所有https://play.min.io上的存储桶。
mc ls play
[2016-04-08 03:56:14 IST]     0B albums/
[2016-04-04 16:11:45 IST]     0B backup/
[2016-04-01 20:10:53 IST]     0B deebucket/
[2016-03-28 21:53:49 IST]     0B guestbucket/
[2016-04-08 20:58:18 IST]     0B mybucket/
  • mb命令 - 创建存储桶
    mb命令在对象存储上创建一个新的存储桶。在文件系统,它就和mkdir -p命令是一样的。存储桶相当于文件系统中的磁盘或挂载点,不应视为文件夹。MinIO对每个​​用户创建的存储桶数量没有限制。
    在Amazon S3上,每个帐户被限制为100个存储桶。有关更多信息,请参阅S3上的存储桶限制和限制 。
# 在https://play.min.io上创建一个名叫"mybucket"的存储桶。
mc mb play/mybucket
Bucket created successfully ‘play/mybucket’.
  • cat命令 - 合并对象
    cat命令将一个文件或者对象的内容合并到另一个上。你也可以用它将对象的内容输出到stdout。
# 显示myobject.txt文件的内容
mc cat play/mybucket/myobject.txt
Hello MinIO!!
  • pipe命令 - Pipe到对象
    pipe命令拷贝stdin里的内容到目标输出,如果没有指定目标输出,则输出到stdout。
# 将MySQL数据库dump文件输出到Amazon S3。
mysqldump -u root -p ******* accountsdb | mc pipe s3/sql-backups/backups/accountsdb-oct-9-2015.sql
  • cp命令 - 拷贝对象
    cp命令拷贝一个或多个源文件目标输出。所有到对象存储的拷贝操作都进行了MD4SUM checkSUM校验。可以从故障点恢复中断或失败的复制操作。
#  拷贝一个文本文件到对象存储。
mc cp myobject.txt play/mybucket
myobject.txt:    14 B / 14 B  ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓  100.00 % 41 B/s 0
  • rm命令 - 删除存储桶和对象
    使用rm命令删除文件对象或者存储桶。
# 删除一个对象。
mc rm play/mybucket/myobject.txt
Removed ‘play/mybucket/myobject.txt’.

# 删除一个存储桶并递归删除里面所有的内容。由于这个操作太危险了,你必须传--force参数指定强制删除。
mc rm --recursive --force play/myobject
Removed ‘play/myobject/newfile.txt’.
Removed 'play/myobject/otherobject.txt’.

# 从mybucket里删除所有未完整上传的对象。
mc rm  --incomplete --recursive --force play/mybucket
Removed ‘play/mybucket/mydvd.iso’.
Removed 'play/mybucket/backup.tgz’.

# 删除一天前的对象。
mc rm --force --older-than=1 play/mybucket/oldsongs

  • share命令 - 共享
    share download命令生成不需要access key和secret key即可下载的URL,过期参数设置成最大有效期(不大于7天),过期之后权限自动回收。
    示例: 生成一个对一个对象有4小时访问权限的URL。
mc share download --expire 4h play/mybucket/myobject.txt
URL: https://play.min.io/mybucket/myobject.txt
Expire: 0 days 4 hours 0 minutes 0 seconds
Share: https://play.min.io/mybucket/myobject.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=Q3AM3UQ867SPQQA43P2F%2F20160408%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20160408T182008Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=1527fc8f21a3a7e39ce3c456907a10b389125047adc552bcd86630b9d459b634
  • find命令 - 查找文件和对象
    find命令通过指定参数查找文件,它只列出满足条件的数据。
    示例: 持续从s3存储桶中查找所有jpeg图像,并复制到minio "play/bucket"存储桶
mc find s3/bucket --name "*.jpg" --watch --exec "mc cp {} play/bucket"
  • config命令 - 管理配置文件
    config host命令提供了一个方便地管理~/.mc/config.json配置文件中的主机信息的方式,你也可以用文本编辑器手动修改这个配置文件。
    添加MinIO服务的access和secret key到配置文件,注意,shell的history特性可能会记录这些信息,从而带来安全隐患。在bash shell,使用set -o和set +o来关闭和开启history特性。
set +o history
mc alias set myminio http://localhost:9000 OMQAGGOL63D7UNVQFY8X GcY5RHNmnEWvD/1QxD3spEIGj+Vt9L7eHaAaBTkJ
set -o history
  • update命令 - 软件更新
    从https://dl.min.io检查软件更新。Experimental标志会检查unstable实验性的版本,通常用作测试用途。
mc update
You are already running the most recent version of ‘mc’.
  • version命令 - 显示版本信息
    显示当前安装的mc版本。
mc version
Version: 2016-04-01T00:22:11Z
Release-tag: RELEASE.2016-04-01T00-22-11Z
Commit-id: 12adf3be326f5b6610cdd1438f72dfd861597fce
posted @ 2021-01-30 22:18  流雨声  阅读(483)  评论(0编辑  收藏  举报