Minio Client常用命令总结
0. 关于Minio
Minio客户端工具(mc)是一个用来管理Minio的命令行工具。
1.安装mc
mac版本
brew install minio/stable/mc
2. 命令与参数
mc --help
NAME:
  mc - MinIO Client for cloud storage and filesystems.
USAGE:
  mc [FLAGS] COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]
COMMANDS:
  alias      set, remove and list aliases in configuration file
  ls         list buckets and objects
  mb         make a bucket
  rb         remove a bucket
  cp         copy objects
  mirror     synchronize object(s) to a remote site
  cat        display object contents
  head       display first 'n' lines of an object
  pipe       stream STDIN to an object
  share      generate URL for temporary access to an object
  find       search for objects
  sql        run sql queries on objects
  stat       show object metadata
  mv         move objects
  tree       list buckets and objects in a tree format
  du         summarize disk usage recursively
  retention  set retention for object(s)
  legalhold  manage legal hold for object(s)
  diff       list differences in object name, size, and date between two buckets
  rm         remove objects
  version    manage bucket versioning
  ilm        manage bucket lifecycle
  encrypt    manage bucket encryption config
  event      manage object notifications
  watch      listen for object notification events
  undo       undo PUT/DELETE operations
  anonymous  manage anonymous access to buckets and objects
  tag        manage tags for bucket and object(s)
  replicate  configure server side bucket replication
  admin      manage MinIO servers
  update     update mc to latest release
GLOBAL FLAGS:
  --autocompletion              install auto-completion for your shell
  --config-dir value, -C value  path to configuration folder (default: "/Users/zhangzhibin/.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
  --version, -v                 print the version
TIP:
  Use 'mc --autocompletion' to enable shell autocompletion
VERSION:
  RELEASE.2021-09-02T09-21-27Z
添加自动补齐脚本
# 运行以下命令,然后重启shell
mc --autocompletion
3. 使用
3.1. 设置服务器别名alias
https://docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-alias.html
mc alias set ALIAS HOSTNAME ACCESSKEY SECRETKEY
移除服务器
mc alias remove ALIAS
查看所有服务器
mc alias list
3.2. 创建桶bucket
https://docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-mb.html
mc mb --with-lock ALIAS/BUCKET
3.3. 上传
https://docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-cp.html
上传文件
mc cp SOURCE ALIAS/PATH
上传文件夹
mc cp --recursive SOURCE ALIAS/PATH
示例
# 注意 本地目录后要加/,而目标目录可加可不加
mc cp --recursive ./test-folder/ local/apps/
or
mc cp --recursive ./test-folder/ local/apps/
3.4. 同步文件夹
https://docs.min.io/minio/baremetal/reference/minio-cli/minio-mc/mc-mirror.html
The mc mirror command synchronizes content to an S3-compatible host, similar to the rsync utility.
同步文件系统
mc mirror FILEPATH ALIAS/PATH
示例
mc mirror ./test-folder local/apps/test-folder
或者 同步到另一个文件夹
mc mirror ./test-folder local/apps/test-folder2
同步对象存储
mc mirror --watch SRCALIAS/SRCPATH TGTALIAS/TGTPATH
关于--watch选项
添加 --watch 选项,可以持续监听文件的变化,保持同步。
但是 不适合文件非常多的文件夹,否则可能报错:
3.5. 删除文件或者文件夹
mc rm
删除文件
mc rm ALIAS/PATH
示例
mc rm -r --force  local/apps/test-folder2/index.html
删除文件夹
mc rm -r --force ALIAS/PATH
mc rm -r --force  local/apps/test-folder2
3.6. 移动 mc mv
3.7. 设置访问权限 policy
https://docs.min.io/docs/minio-client-complete-guide.html#policy
mc policy [FLAGS] set PERMISSION TARGET
举例
# 设置为公开访问
mc policy set public <alias>/<bucket>
 
    