利用百度网盘自动备份Linux VPS数据(CentOS)
ps:本文基于CentOS 6.4(64位)实现,其他Linux系统(如Ubuntu, Debian 等)理论上也可实现,无非是改下软件包的安装方式。
工具:
1、bpcs_uploader:用于shell下将数据上传到百度网盘。
2、自定义打包脚本:导出数据库,打包网站数据,调用bpcs_uploader上传。
介绍完工具,下面就来详细说下步骤:
1、配置bpcs_uploader
(由于目前百度PCS权限需要审核,笔者是没申请下来,如果你有幸申请到了自己的api key,可以参考项目主页上的方法初始化,本文介绍的快速初始化,需要每个月重新登录百度验证一次)
从http://oott123.github.io/bpcs_uploader/ 下载所需的脚本文件后解压,然后执行:
./bpcs_uploader.php quickinit
回车后进入快速初始化,输入y,然后打开浏览器访问https://openapi.baidu.com/device ,在文本框中输入上面shell中显示的授权码,点击继续。 看到网页上显示“请返回设备继续操作!”后,返回shell上按下回车后,即完成了初始化配置。
2、配置打包脚本:
你可以直接下载baiduUp解压后,修改文件中相关的地方即可。(本人shell编程菜鸟,本脚本参考了网上一些大牛的代码,主要自己增加了上传失败后重新上传的部分)
3、测试
手动执行一下baiduUp.sh,如果一切顺利,上传完成后,登录你的百度网盘看看吧,你的数据已经自动上传到了『我的应用数据』这个文件夹下面了。如果没有,看看脚本有没有报错。
4、配置脚本自动运行
测试成功后,剩下的就是让它在固定的时间自动运行起来,这个时候就需要用到crontab了
首先安装:
yum install vixie-cron && yum install crontabs
加入开机自动启动:
chkconfig --level 35 crond on
编辑定时任务:
crontab -e
增加00 03 * * * /root/baiduUp.sh,保存。表示每天凌晨3:00(按需求自行修改)自动执行baiduUp.sh脚本
重启定时任务:
service crond restart
好了,到这里你的服务器每天就可以自动备份到百度网盘了,从此妈妈再也不用担心我通宵备份数据了。^_^