MinIO客户端之share

发布时间 2023-12-16 02:35:43作者: jackieathome

MinIO提供了一个命令行程序mc用于协助用户完成日常的维护、管理类工作。

官方资料


生成下载对象的URL,指定对象名称,命令如下:

./mc share download --recursive local1/bkt2/local2.json

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt2/local2.json
Expire: 7 days 0 hours 0 minutes 0 seconds
Share: http://192.168.0.109:9000/bkt2/local2.json?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=U3mrTCIjBAzz57LxnEES%2F20231215%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231215T181441Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=373ccde73506acf139874f8e0463b8f828efb2e3133e662b6c8d444b8170600c

生成下载对象的URL,不指定对象名称,命令如下:

./mc share download --recursive local1/bkt1/

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt1/docker-compose
Expire: 7 days 0 hours 0 minutes 0 seconds
Share: http://192.168.0.109:9000/bkt1/docker-compose?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=U3mrTCIjBAzz57LxnEES%2F20231215%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231215T181534Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=d188450c58ec169efb263a1f78c8e26821f1763f19807519f40ee4bde35e4da9

创建一个上传文件的URL,指定对象名称为to-upload.txt,命令如下:

./mc share upload --recursive local1/bkt1/to-upload.txt

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt1/to-upload.txt
Expire: 7 days 0 hours 0 minutes 0 seconds
Share: curl http://192.168.0.109:9000/bkt1/ -F x-amz-signature=be6986e5c36da9e34b801f81883c9125a700988c6c081b9b46e6127236d370b0 -F bucket=bkt1 -F policy=eyJleHBpcmF0aW9uIjoiMjAyMy0xMi0yMlQxODoyMTo1NS42MjVaIiwiY29uZGl0aW9ucyI6W1siZXEiLCIkYnVja2V0IiwiYmt0MSJdLFsic3RhcnRzLXdpdGgiLCIka2V5IiwidG8tdXBsb2FkLnR4dCJdLFsiZXEiLCIkeC1hbXotZGF0ZSIsIjIwMjMxMjE1VDE4MjE1NloiXSxbImVxIiwiJHgtYW16LWFsZ29yaXRobSIsIkFXUzQtSE1BQy1TSEEyNTYiXSxbImVxIiwiJHgtYW16LWNyZWRlbnRpYWwiLCJVM21yVENJakJBeno1N0x4bkVFUy8yMDIzMTIxNS91cy1lYXN0LTEvczMvYXdzNF9yZXF1ZXN0Il1dfQ== -F x-amz-algorithm=AWS4-HMAC-SHA256 -F x-amz-credential=U3mrTCIjBAzz57LxnEES/20231215/us-east-1/s3/aws4_request -F x-amz-date=20231215T182156Z -F key=to-upload.txt<NAME> -F file=@<FILE>

创建一个上传文件的URL,仅指定桶名,没有指定对象名称,命令如下:

./mc share upload --recursive local1/bkt1/

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt1/
Expire: 7 days 0 hours 0 minutes 0 seconds
Share: curl http://192.168.0.109:9000/bkt1/ -F x-amz-credential=U3mrTCIjBAzz57LxnEES/20231215/us-east-1/s3/aws4_request -F x-amz-date=20231215T182211Z -F x-amz-signature=5a392cce06bf366c3de7e0124a876f77b9e266e31ba9cb6d812eeb7ea369db32 -F bucket=bkt1 -F policy=eyJleHBpcmF0aW9uIjoiMjAyMy0xMi0yMlQxODoyMjoxMS41MDFaIiwiY29uZGl0aW9ucyI6W1siZXEiLCIkYnVja2V0IiwiYmt0MSJdLFsic3RhcnRzLXdpdGgiLCIka2V5IiwiIl0sWyJlcSIsIiR4LWFtei1kYXRlIiwiMjAyMzEyMTVUMTgyMjExWiJdLFsiZXEiLCIkeC1hbXotYWxnb3JpdGhtIiwiQVdTNC1ITUFDLVNIQTI1NiJdLFsiZXEiLCIkeC1hbXotY3JlZGVudGlhbCIsIlUzbXJUQ0lqQkF6ejU3THhuRUVTLzIwMjMxMjE1L3VzLWVhc3QtMS9zMy9hd3M0X3JlcXVlc3QiXV19 -F x-amz-algorithm=AWS4-HMAC-SHA256 -F key=<NAME> -F file=@<FILE>

查看当前可用的上传对象的URL,命令如下:

./mc share ls upload local1/bkt1

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt1/
Expire: 6 days 23 hours 57 minutes 14 seconds
Share: curl http://192.168.0.109:9000/bkt1/ -F x-amz-credential=U3mrTCIjBAzz57LxnEES/20231215/us-east-1/s3/aws4_request -F x-amz-date=20231215T182211Z -F x-amz-signature=5a392cce06bf366c3de7e0124a876f77b9e266e31ba9cb6d812eeb7ea369db32 -F bucket=bkt1 -F policy=eyJleHBpcmF0aW9uIjoiMjAyMy0xMi0yMlQxODoyMjoxMS41MDFaIiwiY29uZGl0aW9ucyI6W1siZXEiLCIkYnVja2V0IiwiYmt0MSJdLFsic3RhcnRzLXdpdGgiLCIka2V5IiwiIl0sWyJlcSIsIiR4LWFtei1kYXRlIiwiMjAyMzEyMTVUMTgyMjExWiJdLFsiZXEiLCIkeC1hbXotYWxnb3JpdGhtIiwiQVdTNC1ITUFDLVNIQTI1NiJdLFsiZXEiLCIkeC1hbXotY3JlZGVudGlhbCIsIlUzbXJUQ0lqQkF6ejU3THhuRUVTLzIwMjMxMjE1L3VzLWVhc3QtMS9zMy9hd3M0X3JlcXVlc3QiXV19 -F x-amz-algorithm=AWS4-HMAC-SHA256 -F key=<NAME> -F file=@<FILE>

URL: http://192.168.0.109:9000/bkt1/to-upload.txt
Expire: 6 days 23 hours 56 minutes 59 seconds
Share: curl http://192.168.0.109:9000/bkt1/ -F x-amz-signature=be6986e5c36da9e34b801f81883c9125a700988c6c081b9b46e6127236d370b0 -F bucket=bkt1 -F policy=eyJleHBpcmF0aW9uIjoiMjAyMy0xMi0yMlQxODoyMTo1NS42MjVaIiwiY29uZGl0aW9ucyI6W1siZXEiLCIkYnVja2V0IiwiYmt0MSJdLFsic3RhcnRzLXdpdGgiLCIka2V5IiwidG8tdXBsb2FkLnR4dCJdLFsiZXEiLCIkeC1hbXotZGF0ZSIsIjIwMjMxMjE1VDE4MjE1NloiXSxbImVxIiwiJHgtYW16LWFsZ29yaXRobSIsIkFXUzQtSE1BQy1TSEEyNTYiXSxbImVxIiwiJHgtYW16LWNyZWRlbnRpYWwiLCJVM21yVENJakJBeno1N0x4bkVFUy8yMDIzMTIxNS91cy1lYXN0LTEvczMvYXdzNF9yZXF1ZXN0Il1dfQ== -F x-amz-algorithm=AWS4-HMAC-SHA256 -F x-amz-credential=U3mrTCIjBAzz57LxnEES/20231215/us-east-1/s3/aws4_request -F x-amz-date=20231215T182156Z -F key=to-upload.txt<NAME> -F file=@<FILE>

查看当前可用的下载对象的URL,命令如下:

./mc share ls download local1/bkt1

控制台的输出,如下:

URL: http://192.168.0.109:9000/bkt1/docker-compose
Expire: 6 days 23 hours 49 minutes 57 seconds
Share: http://192.168.0.109:9000/bkt1/docker-compose?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=U3mrTCIjBAzz57LxnEES%2F20231215%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231215T181534Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=d188450c58ec169efb263a1f78c8e26821f1763f19807519f40ee4bde35e4da9

URL: http://192.168.0.109:9000/bkt2/local2.json
Expire: 6 days 23 hours 49 minutes 5 seconds
Share: http://192.168.0.109:9000/bkt2/local2.json?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=U3mrTCIjBAzz57LxnEES%2F20231215%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231215T181441Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=373ccde73506acf139874f8e0463b8f828efb2e3133e662b6c8d444b8170600c

虽然指定了桶名为bkt1,但同时输出了bkt2的下载对象的URL。

其它可选的参数:
--expire
--recursive