全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 3733|回复: 42

分享一个我自用的简单的云备份方案

  [复制链接]
发表于 2023-10-9 16:12:22 | 显示全部楼层 |阅读模式
今天给大家分享一个我自用的超级简单的云备份方案。是的我又来骗流量了

原文地址:http://www.edu.cy/cloud_backup_easy

由于意外丢失了更新多年的网站的数据,遗憾之余也意识到不管服务器厂商看起来多靠谱,自己备份数据都是非常重要的。下面就分享一个我自用的非常简单的备份方案,可以轻松备份数据到多个云存储厂商。

https://github.com/abenoseimei/cbe/releases/tag/v1.0.0
先在这里选择合适的二进制文件下载安装到你的服务器,比如我是 64位 amd 的 linux 服务器,那就在服务器运行命令
(如果没有你适配的版本,或者不想用现成的,可以用这个项目的源码自己编译,后续会更新具体操作步骤)

wget https://github.com/abenoseimei/cbe/releases/download/v1.0.0/cbe-v100-linux-amd64
mv cbe-v100-linux-amd64 /usr/bin/cbe
chmod +x /usr/bin/cbe

这样就安装完成了,怎么使用呢?命令格式是这样

cbe -c /etc/cbe.yaml -m aliyunoss -f /root/bak.tar.gz

-c, -m, -f 后边跟的参数分别是:配置文件路径,云存储模式,要上传的本地文件

当然光这样不行,还需要一个配置文件,格式是像这样:
https://github.com/abenoseimei/cbe/blob/main/cbe.yaml
新建一模一样的配置文件,填写好后放到一个固定的位置,比如 /etc/cbe.yaml

下边具体说说各个云储存模式的配置方法(用哪个就配哪个,都用就都配置):

1. aliyunoss (阿里云 OSS),进入阿里云 RAM 访问控制,创建一个用户,创建的时候要勾选 OpenAPI 调用访问,之后把 AccessKey ID 和 AccessKey Secret 记下填到 cbe.yaml 配置文件里,然后进入阿里云对象存储 OSS,进入你要用来上传备份的 Bucket(还没有的话新建一个,存储类型选标准存储),找 权限控制-> Bucket 授权策略,新增授权把刚才添加的子账号选进去,授权 “读/写” 就够了。在 Bucket 概览里可以找到 Endpoint (外网访问),这个填到配置文件里。阿里云 OSS 资源包现在价格是 40G 每年 9 元,建议先买他个十年。

2. tencentcos (腾讯云 COS),进入腾讯云 CAM 访问管理,创建一个用户,新建 API 密钥,把 SecretId 和 SecretKey 记下填到我们的配置文件里,然后进入腾讯云对象存储,进入你要用来上传备份的 Bucket(还没有的话新建一个),找 权限管理 -> 存储桶访问权限,用户权限里添加刚才创建的子账号,授予数据读取和写入权限。然后在这个桶的概览里找到 “访问域名”,这个就是 bucketUrl,填到配置文件里。腾讯云 COS 资源包,买那个深度归档存储容量包,10G 每年 1.2 元,这个最便宜,建议多买点。

3. googlecs (谷歌云存储),在谷歌云面板顶部搜索框里输入 IAM 找到 IAM & Admin 进入,找到 Service Accounts -> Create service account,新建服务账号,授权 Cloud Storage -> Storage Object Admin,创建之后 KEYS -> ADD KEY -> Create new key,选 json,就可以下载到一个文件,这个上传到你的服务器之后,把具体路径地址填到 cbe.yaml 配置文件里的 credential。projectID 和 bucketName 就是谷歌云的 project ID 和要上传备份用的桶名字。谷歌云存储有免费的 5G 存储空间,注意建桶的时候要选对,选 single region 的美国区域。

4. googledrive(Google Drive),我们可以利用共享跳过 OAuth 验证,这样配置简单很多。同样也是新建服务账号,角色权限给基本的 Basic -> Viewer,创建 KEY 并下载 json,然后 Google Drive 里新建一个文件夹,共享给刚才新建的服务号,权限是 Editor。把刚才下载的 json 传到服务器上,路径地址填到 cbe.yaml 里 googledrive -> credential。运行命令 cbe -c /etc/cbe.yaml -m googledrivelist 可以看到刚才共享的文件夹名字,后边括号里的那串东西是它的 ID,把它复制填到配置文件里的 parent 即可。

这样就可以配合 bash 和 crontab,实现自由的自动备份,或者你有其他软件或脚本,想直接调用这个命令,都很方便,具体的改天抽空更新。
发表于 2023-10-9 16:35:33 | 显示全部楼层
Assassin 发表于 2023-10-9 16:23
的确有很多现成的项目了,但感觉用起来都不够方便,所以做了这个更简洁的 ...

rclone不论是用法还是命令,参数设置都比你的简洁。。。。而且功能。。。建议你真的了解下rclone再写你自己这个
发表于 2023-10-10 10:45:27 | 显示全部楼层
Assassin 发表于 2023-10-10 10:05
按照 google 开发文档里的说法 token 都是会过期的,也许你的是用某种方式更新过,具体我就不清楚了,但 ...

token是会过期,但我记得rclone用的是oauth啊,授权一次就可以了后续的token是使用oauth请求时获取的,OneDrive啥的同理,只需要一次授权就可以了
 楼主| 发表于 2023-10-10 10:05:50 | 显示全部楼层
枝江小狼王 发表于 2023-10-10 09:57
没有的事, 我token快一年了都没掉过

按照 google 开发文档里的说法 token 都是会过期的,也许你的是用某种方式更新过,具体我就不清楚了,但单是过期这一点已经足够别扭了,无论是一个月还是一年,而且除了这点,每次授权 oauth 也的确麻烦,我能跳过没必要要用这个
发表于 2023-10-9 16:15:42 来自手机 | 显示全部楼层
还是用宝塔7.7吧。。
 楼主| 发表于 2023-10-9 16:17:15 | 显示全部楼层
MET 发表于 2023-10-9 16:15
还是用宝塔7.7吧。。

宝塔那个软件多大。。。我这个东西只有 20M,而且调用方便

点评

rclone 了解一下。。。  发表于 2023-10-10 10:08
发表于 2023-10-9 16:18:30 | 显示全部楼层
rclone了解一下吧
 楼主| 发表于 2023-10-9 16:23:20 | 显示全部楼层
cgkings 发表于 2023-10-9 16:18
rclone了解一下吧

的确有很多现成的项目了,但感觉用起来都不够方便,所以做了这个更简洁的
发表于 2023-10-9 16:34:26 来自手机 | 显示全部楼层
我现在用rclone 同步到r2




机场推荐|||GPT公益|||TG联系我

 楼主| 发表于 2023-10-9 16:42:26 | 显示全部楼层
bobbylong 发表于 2023-10-9 16:35
rclone不论是用法还是命令,参数设置都比你的简洁。。。。而且功能。。。建议你真的了解下rclone再写你自 ...

rclone 的确支持的厂商和功能很多,但也是很臃肿不便,有时我就只想简单的实现一些功能罢了
比如 google drive,他的 oauth 配置你们不觉得蹩脚吗,而且 token 还会过期
发表于 2023-10-9 16:59:25 | 显示全部楼层
Assassin 发表于 2023-10-9 16:42
rclone 的确支持的厂商和功能很多,但也是很臃肿不便,有时我就只想简单的实现一些功能罢了
比如 google  ...

不过期?哈哈哈,那是,那你这个大有可为
 楼主| 发表于 2023-10-9 17:02:02 | 显示全部楼层
bobbylong 发表于 2023-10-9 16:59
不过期?哈哈哈,那是,那你这个大有可为

我只是想用来配置自动备份的,所以并不希望他过期,也不想每台服务器新配置的时候频繁的打开浏览器做验证,这很难理解吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-17 09:16 , Processed in 0.073522 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表