利用inotify将本地文件实时同步到minio对象存储

原创
2022/02/19 18:53
阅读数 72

安装inotify-tools

yum install -y epel-release
yum --enablerepo=epel install inotify-tools -y

安装minio mc

curl https://dl.min.io/client/mc/release/linux-amd64/mc \
  --create-dirs \
  -o /opt/minio-binaries/mc

chmod +x /opt/minio-binaries/mc

连接minio服务器

/opt/minio-binaries/mc alias set myminio https://minioserver.example.net ACCESS_KEY SECRET KEY

创建sh

这里只监控了close_write事件,如果自己有需要,可以自己改

数据传输设置--storage-class REDUCED_REDUNDANCY选项,可以根据需要去除

src='xxxxxxxxxx' #这里是要同步的目录
inotifywait -mrq --format '%Xe %w%f' -e close_write $src | while read file
        do
                INO_EVENT=$(echo $file | awk '{print $1}')
                INO_FILE=$(echo $file | awk '{print $2}')
                if [ "$INO_EVENT" == "CLOSE_WRITEXCLOSE" ]
                then
						/opt/minio-binaries/mc cp --preserve --recursive  --storage-class REDUCED_REDUNDANCY $INO_FILE myminio/bucket/${INO_FILE/$src/}
                fi
        done

守护sh文件

可以用systemctl,或者Supervisor

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部