curl上传文件到minio服务器

匿名用户上传

bash 复制代码
#!/bin/bash

bucket=mybucket
file=/home/database.yml

host=192.168.24.9:9000

resource="/${bucket}/${file}"
content_type="application/octet-stream"
date=`date -R`

echo $resource
echo "http://$host${resource}"

curl -v -X PUT -T "${file}" \
          -H "Host: $host" \
          -H "Date: ${date}" \
          -H "Content-Type: ${content_type}" \
          http://$host${resource}

使用账号密码上传

bash 复制代码
#!/bin/bash

ACCESS_KEY="minioadmin"
SECRET_KEY="minioadmin"
BUCKET_NAME="mybucket"
FILE_NAME="/home/database.yml"
OBJECT_NAME="database.yml"
MINIO_URL="192.168.24.9:9000"

# 生成日期和签名
DATE_VALUE="$(date -R)"
SIGNATURE="$(echo -en "PUT\n\n\n${DATE_VALUE}\n/${BUCKET_NAME}/${OBJECT_NAME}" | openssl sha1 -hmac "${SECRET_KEY}" -binary | base64)"

curl -i -X PUT --upload-file "${FILE_NAME}" \
     --header "Date: ${DATE_VALUE}" \
     --header "Authorization: AWS ${ACCESS_KEY}:${SIGNATURE}" \
     "${MINIO_URL}/${BUCKET_NAME}/${OBJECT_NAME}"
相关推荐
IT摆渡者8 小时前
VM EXSI7.0存储硬盘故障处理
大数据·linux·github
赵民勇8 小时前
systemd-cgtop命令详解
linux·运维
hhwyqwqhhwy9 小时前
Ubuntu22.04 安装vitis
linux
刚入门的大一新生10 小时前
Linux-Linux第一个系统程序-进度条
linux·运维·服务器
wuminyu10 小时前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
茫忙然10 小时前
Linux提权辅助查询工具——BinLens的安装和使用
linux·提权·binlens
FlightYe10 小时前
linux系统编程(八):阻塞与非阻塞IO对比
android·linux·运维·服务器·github·vim
雾时之林11 小时前
Linux---计算机网络常见面试题
linux·运维·计算机网络
10mAh12 小时前
【Linux】error while loading shared libraries 怎么解决?——ldd、RPATH 与动态链接排错
java·linux·前端
楷哥爱开发12 小时前
如何在 Windows、macOS 和 Linux 上安装 scikit-learn (sklearn)
linux·windows·macos