MiniO Client(mc)简单使用指南
#
Minio Client 简称mc,是minio服务器的客户端,对ls,cat,cp,mirror,diff,find等UNIX命令提供了一种替代方案,它支持文件系统和兼容Amazon S3的云存储服务(AWS Signature v2和v4)。
mc client客户端工具安装此处不再赘述!
但是中文官网MinIO下载地址出现404,与英文官网的说明也不相同,感觉没有维护了一样,也可以在gitHub上下载:https://github.com/minio/minio
一、mc client指令集合
ls 列出文件和文件夹。 mb 创建一个存储桶或一个文件夹。 cat 显示文件和对象内容。 pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT。 share 生成用于共享的URL。 cp 拷贝文件和对象。 mirror 给存储桶和文件夹做镜像。 find 基于参数查找文件。 diff 对两个文件夹或者存储桶比较差异。 rm 删除文件和对象。 events 管理对象通知。 watch 监视文件和对象的事件。 policy 管理访问策略。 config 管理mc配置文件。 update 检查软件更新。 version 输出版本信息。
二、mc client基本使用
1、连接minio服务器
# 连接minio服务器,即添加一个云存储连接;minio 是起一个可辨识的名字,url 是 endpoint,minio的用户名,minio的密码
注意:端口不能漏,-api 不能漏,如果漏掉 -api 执行后会报错
#连接minio服务器,指令如下: mc config host add 起个名字 http://ip:9000 minio服务器用户名 minio服务器密码 --api S3v4 例如:mc config host add minio http://127.0.0.1:9000 AK520IxxxxxxxXV66BZ J7ZvF09xxxxxxxxxxxxxxxxxOJw4SSdKjmc --api s3v4
2、删除已添加的云存储连接
# 删除
mc config host remove minio连接名称
例如:mc config host remove minio1
3、查看已连接的云存储
mc config host list
4、查看存储桶
mc ls minio连接的存储名称
例如:mc ls minio1
5、其他操作
更多操作指令请查看--help 帮助
mc --help
三、设置Minio永久访问链接
众所周知minio的分享链接,最多支持7天,且mc Client 没有设置永久链接的api,要想设置永久链接,须通过minio客户端 mc来配置。 而网上的博客几乎所有的都千篇一律,操作步骤不全,且漏掉一些重要的参数,导致有许多人踩坑,加之minio资源在外网,下载及其缓慢,网上也没人弄个网盘链接,故在此特别说明。
1、设置下载链接
默认最多支持7天,即--expire=120h,超出所设置时间范围会报错。
#设置分享链接为7天,默认最大支持7天 mc share download --recursive --expire=120h minio1/env-tools/ #假如设置更大天数,例如一年,则会报错 mc share download --recursive --expire=8760h minio1/env-tools/
2、设置永久访问桶
执行命令: mc policy set public minio连接名称/桶名 例如:mc policy set public minio1/env-tools/
注意:在新版本中,会要求你使用mc anonymous命令来设置。
执行命令: mc anonymous set public minio连接名称/桶名
例如:mc anonymous set public minio1/env-tools/
至此永久访问链接就设置成功了。
3、最终目的
但是问题来了,我们的目的是希望mc client api生成的链接能永久访问,虽然我们把桶设置了public,但此时通过api生成的访问链接还是有过期时间的,取决于expires的设置,最大7天;所以我们需要把api生成的链接进行改造。即:把生成的链接通过 ?
切割,得到前面的部分,就是可访问的永久链接。
举例: http://ip:9000/test/timg.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=minioadmin%2F20201110%2F%2Fs3%2Faws4_request&X-Amz-Date=20201110T154002Z&X-Amz-Expires=432000&X-Amz-SignedHeaders=host&X-Amz-Signature=925543f3a113f52362c5160ed7aa1cdf2c22d9104724d1153278592a1bae86a5 按?分割,实际请求地址 http://ip:9000/test/timg.jpg
#参考来源:MinIO Client(mc)完全指南[4]
#
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性