文档章节

使用百度网盘备份VPS

 蜗牛奔跑
发布于 2016/11/01 16:29
字数 277
阅读 8
收藏 1

#!/usr/bin/python
#coding:utf-8
import os
import datetime
import tarfile
import json
from baidupan.baidupan import BaiduPan

    
def mysql_backup():
    db_host='localhost'
    db_user='root'
    db_password='password'
    mysqldump='/usr/local/mysql/bin/mysqldump'

    #print db_bak_name    
    cmd="%s -u%s  -p%s --database  wordpress >  %s"%(mysqldump,db_user,db_password,db_bak_name)

    if os.popen(cmd):
        tar=tarfile.open(db_bak,'w:bz2')
        tar.add(db_bak_name)
        return "Success"


#mysql_backup()
def blog_backup():
    blog_dir='/data/wordpress/'

    blog_tar=tarfile.open(blog_bak,'w:bz2')
    blog_tar.add(blog_dir)
    return "Success"

def upload_bpcs(upload_dir,upload_file,del_file):
    access_token="access"#从百度云获取
    disk=BaiduPan(access_token)
    bpcs_dir='/apps/bpcs_uploader/'
    if not disk.meta(bpcs_dir+upload_dir):
        disk.mkdir(bpcs_dir+upload_dir)
    #查看使用情况
    #print disk.quota()
    disk.upload(upload_file, path=bpcs_dir+upload_dir+upload_file,ondup='overwrite') #上传文件,如果存在,直接覆盖
    if disk.meta(bpcs_dir+upload_dir+del_file): #删除历史文件
        disk.rm(bpcs_dir+upload_dir+del_file)

if __name__ == '__main__':

    today=datetime.datetime.now().date()
    del_date=today-datetime.timedelta(days=7)
    back_dir='/data/backup/'
    logfile=back_dir+'bpcs.log'
    os.chdir(back_dir)

    #mysql
    db_bak_name='mysql-'+str(today)+'.sql'
    db_bak='mysql-'+str(today)+'.tar.bz2'
    db_del='mysql-'+str(del_date)+'.tar.bz2'

    #blog
    blog_bak='blog-'+str(today)+'.tar.bz2'
    blog_del='blog-'+str(del_date)+'.tar.bz2'

    log=open(logfile,'a')
    log.write("##########%s###########\n"%datetime.datetime.now())
    try:
        if os.path.exists(back_dir):
            os.chdir(back_dir)
        else:
            os.mkdir(back_dir)
            os.chdir(back_dir)
        
        if mysql_backup():
            upload_bpcs('mysql/', db_bak, db_del)            
            log.write('Mysql upload Success !\n')
            os.system('rm -rf %s %s '%(db_bak_name,db_bak))
        else:
            log.write('mysqldump failed !\n')
        if blog_backup():
            upload_bpcs('blog/', blog_bak, blog_del)
            log.write('blog upload Success !\n')
            os.system('rm -rf %s'%(blog_bak))
        else :
            log.write('blog backup failed !\n')
        log.close()
    except Exception, e:
        print e
        

本文转载自:

上一篇: ssh_thread.py
下一篇: GIT多人协作
粉丝 38
博文 614
码字总数 117758
作品 0
海淀
私信 提问
打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源

打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源 一、下载安装bpcsuploader百度pcs上传脚本 1、bpcs_uploader作者官网: 1、项目页面:http://oott123.github.io/bpcs...

jxyk2007
2013/12/07
0
0
0成本自动备份方案 -适合vps、小博客使用

开头明说,这是一部伪教程,适用于vps下自动备份网站,或者其他文件。 主要利用的是Openload和FTP备份脚本。 首先介绍下Openload,好像是国外一家网赚网盘(好像有很多家大姐姐站都用的这个)...

刘语彤
2017/11/04
0
0
有什么免费资源,公司几台VPS如何自动异地备份网盘???

已经找到可以自动免费备份服务器的网盘了 前提是:就是不用VPS做备份!!!因为VPS的带宽很小,如果白天取回本地 非常影响网站访问。

eechen的粉丝
2014/11/05
340
6
为什么要使用云盘?

关了那么多云盘,我从新浪搬到金山再搬到360,都是说不在就不在了,咱就不能一次性关没了我也好死心塌地买U盘存啊! 1.云盘或网盘介绍 云盘或者网络硬盘,是由互联网公司推出的在线存储服务,...

最美的回忆
2017/11/28
0
0
自行搭建私有云存储kodexplorer篇

可道云kodexplorer是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!最近百度网盘还发出申明,说要限制使用空间...

mythorn
01/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

typescript 接口 函数类型 可索引类型

函数类型 可索引类型 数字索引签名 字符串索引签名 数字索引签名返回值 必须是 字符串索引签名返回值的子集 只读索引签名

lilugirl
今天
3
0
Oracle SQL语法实例合集

如需转载请注明出处https://my.oschina.net/feistel/blog/3052024 目的:迅速激活Oracle SQL 参考:《Oracle从入门到精通》 ------------------------------------------------------------......

LoSingSang
今天
2
0
增加 PostgreSQL 服务进程的最大打开文件数

https://serverfault.com/questions/628610/increasing-nproc-for-processes-launched-by-systemd-on-centos-7 要在systemd的配置里加才行...

helloclia
今天
2
0
组合模式在商品分类列表中的应用

在所有的树形结构中最适合的设计模式就是组合模式,我们看看常用商品分类中如何使用。 先定义一个树形结构的商品接口 public interface TreeProduct { List<TreeProduct> allProducts(...

算法之名
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部