使用百度网盘实现自动备份VPS
http://ju.outofmemory.cn/entry/51536
经过轰轰烈烈的一轮网盘大战,百度网盘的容量已经接近无限(比如我的是3000多G ),而且百度网盘已经开放API,所以用来备份VPS再合适不过了。这里使用的是开源工具bpcs_uploader来实现。
一、首先安装bpcs_uploader
1.下载并解压脚本
wget https://github.com/oott123/bpcs_uploader/zipball/master
unzip master
之后会生成一个oott123开头的目录,建议改名为baidu。
然后进入baidu目录,赋予权限:
chmod +x bpcs_uploader.php
2.配置
首先打开http://developer.baidu.com/dev#/create/在百度云创建一个应用

记得打开API

然后点击基本信息,复制API Key。

运行bpcs_uploader配置(假设已经切换到相应目录)
./bpcs_uploader.php init
输入y继续,粘贴刚刚复制的API Key,之后输入刚刚设置的目录(比如我的是eincy-webdata),然后会跳出一段提示,让你用浏览器打开一个链接:

将链接复制到浏览器打开,点击授权。之后把地址栏的链接复制下来,找到其中的access_token,复制那一串东西,大概是这个样子
3.**05c2ea85d52c2***************a5.2592000.136***9032.3089166538-23**47
粘贴到ssh中,回车,看到Have Fun!以及网盘容量等信息,就证明配置成功。
二、VPS编写自动备份并上传脚本。
以下脚本适用于LNMP环境的VPS备份,并已经存在/home/backup目录。该脚本将备份网站文件、数据库、nginx配置文件,操作完成后会在百度网盘的“我的应用数据”中找到文件。
#!/bin/sh
tar zcvf /home/backup/file.tar.gz /home/wwwroot #备份网站数据
tar zcvf /home/backup/nginx.tar.gz /usr/local/nginx/conf #备份nginx配置文件
killall nginx #备份mysql
service mysql stop
tar zcvf /home/backup/mysql.tar.gz /usr/local/mysql/var
/usr/local/nginx/sbin/nginx
service mysql start
cd baidu #上传到网盘,以日期格式命名,实现增量上传
./bpcs_uploader.php upload /home/backup/file.tar.gz file_$(date +"%Y%m%d").tar.gz
./bpcs_uploader.php upload /home/backup/nginx.tar.gz nginx_$(date +"%Y%m%d").tar.gz
./bpcs_uploader.php upload /home/backup/mysql.tar.gz mysql_$(date +"%Y%m%d").tar.gz
将以上文本复制到backup.sh,并上传到VPS的root目录下,赋予权限
chmod +x backup.sh
输入sh backup.sh进行一次备份测试,成功后就可以用crontab实现每日自动备份。
crontab -e
输入以下内容
00 00 * * * /root/backup.sh
以上内容的意思是每日0点自动执行一次备份脚本。
需要还原的时候,使用以下格式的命令从百度网盘中获取数据,并解压到相应目录即可。
./bpcs_uploader.php download [path_local] [path_remote]
三、写在最后
以上方法的一个明显缺点就是上传慢,大概只有每秒600kb左右,但由于是在凌晨执行,而且全自动,所以这个不是大问题。还有一个是Key的授权时限问题,这个目前还在测试。
使用百度网盘实现自动备份VPS的更多相关文章
- 打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源
前一段时间国内的各大网盘百度云盘,金山快盘,360云盘,华为网盘为争夺用户上演空间容量博弈,网盘商们还固执地以为中国的网民都不懂网络技术,可以像某公司那样用一些数字的手段来忽悠用户,参与到网盘商的数字 ...
- Linux VPS使用百度网盘API上传备份文件
最近百度网盘将空间升级到了永久1TB,鉴于百度的实力用做数据备份空间不错,不过百度网盘没有Linux下的客户端,上传管理文件需通过百度开放云平台访问PCS资源的系列接口. 1.首先加入百度开发者:ht ...
- python使用selenium,webdriver自动下载百度网盘内容
想实现一个自动下载微信公众号分享百度网盘图片链接的爬虫,使用selenium和火狐的webdriver进行完成 1.首先根据自己的浏览器下载相应的webdriver驱动器,python中导入selen ...
- Linux命令行上传文件到百度网盘
利用bpcs_uploader你可以自动将VPS主机上的文件上传到百度网盘中,同时也可以从百度网盘中下载文件到VPS主机上,让你的文件安全地"住"在百度云中.[font=Tahom ...
- 百度网盘自动上传脚本-bpcs_uploader
安装jsonpear install pecl/json 一.bpcs_uploader下载和使用: 1.下载地址:http://oott123.github.com/bpcs_uploader/ 2 ...
- mac百度网盘破解版
以下资源来源于网络收集分享,如有问题请联系我删除!来源入口,后面链接挂了,可去原网址访问! 还在为Mac百度网盘下载速度慢而烦恼吗?百度云盘又是一个非常实用的分享工具,可支持图片.视频.音乐.文档.种 ...
- 使用百度网盘+Git,把版本控制托管到云端
之前公司的一个项目使用SVN来做的版本控制,服务器设在我这台电脑上.然后是出于某些原因,我的电脑IP变了多次,每变一次就要重新绑定静态ip,甚是烦人.同时SVN这种集中式的版本控制服务在我关闭了我的电 ...
- 百度网盘采集源码 ,直接采集网盘添加cookies功能
名称:百度网盘采集源码 程序语言:php 数据库:mysql 程序介绍: 1.直接采集百度网盘url 2.前端基于bootstrap 3.搜索考虑到后期上亿数据,是基于coreseek,搜索时间毫秒级 ...
- aria2 加速百度网盘下载
准备工作: chrome浏览器: BaiduExporter插件(下载地址:https://github.com/acgotaku/BaiduExporter): aria2工具(下载地址:http: ...
随机推荐
- 【PostgreSQL-9.6.3】Red Hat 4.4.7下的安装
1. 下载源码包https://www.postgresql.org/ftp/source/v9.6.1/ 2. 上传到/opt目录下 3. 创建postgres用户及dba组,并修改压缩包的属主属组 ...
- 15年第六届蓝桥杯第七题_手链样式_(stl_string)
手链样式 小明有3颗红珊瑚,4颗白珊瑚,5颗黄玛瑙.他想用它们串成一圈作为手链,送给女朋友.现在小明想知道:如果考虑手链可以随意转动或翻转,一共可以有多少不同的组合样式呢? 请你提交该整数.不要填写任 ...
- MFCEditBox如何自动换行
设置该EditBox属性: 1.Auto HScroll False 2.OEM Convert False 3.Want Return ...
- Mysql使用遇到的问题(一)
1.在使用MySQL的时候,已经新建好了表,插入数据的时候报这个错误: Incorrect string value: '\xE5\xAF\x92\xE6\xB1\x9F...' for column ...
- 为什么java String是固定的 为什么字符串是不可变的
String类不可变的好处 String是所有语言中最常用的一个类.我们知道在Java中,String是不可变的.final的.Java在运行时也保存了一个字符串池(String pool),这使得S ...
- 00C#
C# C#(读作“See Sharp”)是一种简单.现代.面向对象且类型安全的编程语言.C# 起源于 C 语言家族,因此,对于 C.C++ 和 Java 程序员,可以很快熟悉这种新的语言.C# 已经分 ...
- 雷林鹏分享:PHP 错误处理
在 PHP 中,默认的错误处理很简单.一条错误消息会被发送到浏览器,这条消息带有文件名.行号以及描述错误的消息. PHP 错误处理 在创建脚本和 Web 应用程序时,错误处理是一个重要的部分.如果您的 ...
- hdfs深入:09、获取分布式文件系统客户端的几种方式
FileSystem是一个抽象类:获取一个抽象类有两种方式:第一种:看这个抽象类有没有提供什么方法返回他本身第二种:找子类 具体代码如下: /** * 通过url注册的方式访问hdfs,了解,不会用到 ...
- Python学习-列表的其它主要操作
列表的其它主要操作 还记得之前使用del语句去清除一个列表中的所有内容,那么会因为把列表全部清空,所以输出会报错.可以使用clear() 完成 clear(self):可以将一个列表变成空列表 lis ...
- openwrt 配置samba && ubuntu 配置samba
前言:在修改opkg update的下载目录,公司里不能连外网,尝试用samba. 配置samba很简单,修改/etc/config/samba文件,拷贝一下share项,再改一下name就可以了. ...