前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux VPS使用MinIO Client客户端实时同步备份文件

Linux VPS使用MinIO Client客户端实时同步备份文件

作者头像
子润先生
修改2023-09-25 17:00:20
6.6K0
修改2023-09-25 17:00:20
举报
文章被收录于专栏:用户8644135的专栏

说明:博主很久前介绍过MinIO服务器,一个开源的轻量级对象存储服务,具体查看→传送门,用起来挺不错的,搭建也非常方便,而这里要说的其实是MinIO服务器是的一个客户端MinIO Client,主要的功能就是可以自动监听文件夹,然后实时同步到远程的MinIO服务器,也支持同步到Amazon S3Google云存储,同样的安装十分简单,我们可以拿来同步备份博客或者其他数据文件。

安装

文档地址:https://docs.min.io/

基本上MinIO服务器和客户端支持在很多系统上安装,比如WindowsmacOS等,这里主要说Linux

1、安装MinIO Client

代码语言:javascript
复制
wget https://dl.min.io/client/mc/release/linux-amd64/mc -P /usr/local/bin/
chmod +x /usr/local/bin/mc

2、添加云存储

代码语言:javascript
复制
#MinIO云存储,添加前需要在另一台服务器安装MinIO服务,教程查看https://www.moerats.com/archives/643/
mc config host add minio <Endpoint> <AccessKey> <SecretKey> S3v4

#Amazon S3云存储
mc config host add s3 https://s3.amazonaws.com <ALIAS> <Endpoint> <AccessKeyID> <SecretAccessKey> S3v4

#Google云存储
mc config host add gcs  https://storage.googleapis.com <AccessKeyID> <SecretAccessKey> S3v2

这里只说MinIO云存储,Amazon S3云存储参数获取查看→传送门

基本上这里配置好了后,我们可以使用很多命令远程操作云存储上的文件了。

3、开始同步 先创建一个桶,名称为moerats,可自行修改,使用命令:

代码语言:javascript
复制
mc mb minio/moerats

接下来比如我要同步网站根目录/www/wwwroot/www.moerats.com,使用命令:

代码语言:javascript
复制
#该命令只会同步文件,但本地修改或删除,云存储不会变化
mc mirror -w /www/wwwroot/www.moerats.com minio/moerats

#该命令同步文件后,本地修改文件,会自行在云存储进行相应的修改
mc mirror -w --overwrite /www/wwwroot/www.moerats.com minio/moerats

#该命令同步文件后,本地修改/删除文件,会自行在云存储进行相应的修改/删除
mc mirror -w --overwrite --remove /www/wwwroot/www.moerats.com minio/moerats

这里加了--remove参数后,首次会强行让远程存储桶和本地文件一模一样,意味着会清空你的远程存储桶。

运行命令后你会发现远程MinIO云存储里的MOERATS就会出现你网站根目录所有文件了,以后根目录新增文件都会实时同步进去。

当然这里我们也可以同时实时备份多个文件夹到多个存储桶,自行修改名称就行了。

4、开机自启 新建systemd配置文件,适用CentOS 7Debian 8+Ubuntu 16+

代码语言:javascript
复制
#修改成你需要实时同步备份的文件夹
backup="/www/wwwroot/www.moerats.com"
#修改成你要备份到的存储桶
bucket="moerats"
#将以下代码一起复制到SSH运行
cat > /etc/systemd/system/minioc.service <<EOF
[Unit]
Description=minioc
After=network.target

[Service]
Type=simple
ExecStart=$(command -v mc) mirror -w --overwrite --remove ${backup} minio/${bucket}
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

ExecStart为启动命令,默认为自行删除/修改也会同步,可自行修改参数。

启动并设置开机自启:

代码语言:javascript
复制
systemctl start minioc
systemctl enable minioc

该同步为单向的,只能本地影响到远程存储,远程的修改/删除则不会同步到本地,最后MinIO Client客户端的功能其实挺多的,想了解更多的可以查看文档→传送门

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档