背景
自己建了一个小服务在学校的服务器上,而服务器总是各种”意外“,每次出现意外都后悔为什么不把备份数据拷贝一份呢?
这次服务器稳定些了,该想想办法怎么把备份安全存放了,省得哪天服务器”一病不起“,自己就要欲哭无泪了。
工具
七牛是一个强大的数据管理平台,为互联网网站和移动App提供数据的在线托管、传输加速以及图片、音视频等富媒体的云处理服务。
七牛标准用户(免费用户),可以免费存储10G空间,免费每月下载流量10G,免费每月put/delete 10万次,免费每月get 100万次。
如果想要开发app,而苦于寻求一个“够量”的文件存储平台,七牛肯定是你的福音了。
当然这里不是开发app,只是寻求一个存放备份数据的”温床“,同时要有自动同步工具(当然不应该自己写)。
于是翻了翻七牛的开发中心,发现官方提供了一个这样的工具:qrsync。
该工具能够将本地的文件同步到云端。
实现
既然找到了工具,那么就开始动工了。按着开发文档中的一步一步来:
第一步:
登录七牛并创建一个空间。
这个空间名test就是一会要填入配置文件的bucket名。
因为是服务器备份数据,所以选择私有空间。
第二步:
查看 access key 和 secret key。
查看地址,如果没有,就需要自己创建了,很简单。
第三步:
下载该工具压缩包,到该页面下载相应版本的工具.
我的是ubuntu 64位,因此选择 Linux 64bits。
第四步:
新建文件夹qiniu, 解压工具压缩包到该文件夹。
并在该文件夹新建一个名为 conf.json 的文件
填入下面的配置:
{
"src": "/home/your/sync_dir",
"dest": "qiniu:access_key=<AccessKey>&secret_key=<SecretKey>&bucket=<Bucket>",
"deletable": 0,
"debug_level": 1
}
src 就是想要同步的文件夹,
deletable设置0,表示当本地文件删除时并不删除存储在七牛的对应文件。
debug_level 设置为1, 通常设置1,表示只输出必要的日志。
将前面插入的信息填入配置文件。
例如: 如果我的 AccessKey 是 ak, SecretKey 也是 sk 则配置如下:
{
"src": "/home/tan/bak",
"dest": "qiniu:access_key=ak&secret_key=sk&bucket=test",
"deletable": 0,
"debug_level": 1
}
更多的参数设置参见文档。
第五步:
在qiniu目录下运行命令
./qrsync conf.json
这时,就可以实现自动同步了。
文件会自动同步到之前创建的空间,需要的时候可以随时下载。
最后一步:
结合 crontab 来实现每日文件自动同步功能。
这一部分可以参见之前的文章。
同步效果: