zoukankan      html  css  js  c++  java
  • 打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源

    前一段时间国内的各大网盘百度云盘,金山快盘,360云盘,华为网盘为争夺用户上演空间容量博弈,网盘商们还固执地以为中国的网民都不懂网络技术,可以像某公司那样用一些数字的手段来忽悠用户,参与到网盘商的数字游戏中的公司都心知肚明。

    在不需要增加任何网盘上传下载带宽和硬件设备投入的情况下,又可以用TB级别网盘这样的字眼来夺人眼球,在网络上大肆炒作一番,这比用钱买广告来推广网盘有效得多了。在这场网盘炒作中,率先“挑起事非”的两家百度网盘和360网盘获利最多。

    尤其是百度网盘,应该算正式成长为国内网盘界中老大之一了。一年前大家还都在谈论115网盘关闭外链金山快盘华为网盘,不到一年的时间,现在大家提到最多的差不多就是互联网大佬旗下的百度云360云盘和腾讯微云,原来的前三甲就这样“暗淡无光”了。

    百度网盘现在最多可以得到2TB级别的存储容量,这么大的容量作为做站的草根朋友,我们自然不能全部用来看大片了,百度网盘单个文件上传是4GB,如此大的容量,我们完全可以将百度网盘打造成为一个网站自动备份的利器,当然有朋友也会利用此方法将资源存储在百度服务器中。

    本篇文章要分享的Linux VPS文件自动备份上传到百度网盘中采用的程序是bpcs_uploader百度网盘自动上传脚本,同时如果我们要恢复百度网盘的文件到VPS主机上或者下载百度网盘资源,可以用Axel这个Linux下的多线路下载工具,快速将资源从百度网盘中下载到VPS上。

    网盘不仅用来存放文件,还可以用来当作网站备份工具和建站帮手,更多的有关网盘利用的方法有:

    打造百度网盘备份利器:自动备份Linux VPS文件和多线程下载百度网盘资源

    一、下载安装bpcs_uploader百度pcs上传脚本

    1、bpcs_uploader作者官网:

    • 1、项目页面:http://oott123.github.io/bpcs_uploader/

    2、百度pcs上传脚本部落已经详细介绍过了:bpcs_uploader百度网盘自动上传脚本-将文件一键放到百度云

    3、登录你的VPS主机下载安装bpcs_uploader,系统要求是Linux的php 和 curl已经安装。执行以下命令。

    
    wget https://github.com/oott123/bpcs_uploader/zipball/master
    unzip master
    mv oott123-bpcs_uploader-3a33d09 freehao123 #重命名
    cd freehao123 #进入目录
    chmod +x bpcs_uploader.php #设置权限
    ./bpcs_uploader.php #运行初始化
    

    4、注意从github下载的代码解压包的名称可能会有变动,如果你发现第三步的重命名无法使用,你查看一下你下载下来的解压名称是什么。

    PS:2014年3月10日更新,感谢“无名科技”的提醒,现在PCS需要审核,我们可以用快速初始化的方法bpcs_uploader设置。执行以下命令:

    
    ./bpcs_uploader.php quickinit
    

    敲下命令直接进入快速初始化流程,输入y,然后打开浏览器访问https://openapi.baidu.com/device ,在“请输入设备上显示的用户授权码:”文本框中输入上面显示的授权码,并点击继续。 看到网页上显示“请返回设备继续操作!”后,返回ssh上按下回车后,即完成了初始化配置。

    4、运行上述代码后,这里会需要输入一个有PCS权限的API KEY。

    百度pcs上传脚本提示输入密钥

    二、配置bpcs_uploader授权百度云操作

    1、接上面,你需要到http://developer.baidu.com/dev#/create中创建一个用来备份文件的应用项目。

    百度pcs上传脚本创建一个应用

    2、创建好后,在“API管理”中找到“API列表”。

    百度pcs上传脚本找到API列表

    3、在PCS API一行中点击开启。(点击放大)

    百度pcs上传脚本开启应用

    4、输入你要存放文件的目录名称。

    百度pcs上传脚本输入存放的名称

    5、完成后,在应用的基本信息中找到API KEY和Secret Key。

    百度pcs上传脚本查看基本的信息

    6、再回到刚刚你要填入API KEY的SSH界面,复制粘贴API Key,回车。

    7、填入你的百度云备份文件的目录名称,然后会得到一连串的URL地址,复制它。

    百度pcs上传脚本得到一串地址

    8、用浏览器打开这个URL,会看到是否授权访问你的百度云的提示。

    百度pcs上传脚本授权访问

    9、确定后,页面会显示“百度 Oauth 2.0”的字样,表示已经授权完成。

    百度pcs上传脚本完成授权

    10、将将浏览器的地址栏中的access_token一连字符复制回SSH中,粘贴,回车。最后看到是你的百度网盘的容量信息,表示你已经成功配置好了bpcs_uploader了。

    百度pcs上传脚本成功配置

    三、自动打包压缩VPS文件定时上传到百度网盘

    1、自动打包压缩VPS文件的代码有很多,部落参考了 jalena.bcsytv.com 博主写的定时备份VPS数据到Dropbox的脚本,改成了自动打包压缩VPS文件上传到百度网盘版本。

    2、下载地址:baidubd.sh下载。用文本编辑器打开baidubd.sh将MysqL用户名和密码改你自己的。

    百度pcs上传脚本修改密码

    3、脚本的备份目录你也需要根据自己的VPS来修改,如果你在重命名把解压包换成了其它的名称,记得在代码最后的bpcs_uploader路径也改一下。

    百度pcs上传脚本调整路径

    4、将修改后的baidubd.sh上传到你的root目录中,然后执行:sh baidubd.sh,就可以实现手动打包压缩VPS文件并上传到百度网盘中了。(点击放大)

    百度pcs上传脚本完成备份

    5、如何实现定时备份上传到百度网盘中?编辑定时任务:crontab -e,加入一行:00 02 * * * /root/baidubd.sh,保存。表示每天的凌晨2:00自动执行baidubd.sh脚本。

    6、/root/baidubd.sh这是脚本路径,请根据需要自己修改。命令:crontab –l 可以看到你当前的定时任务。 最后不要忘记重启任务:service crond restart

    四、VPS多线程高速下载百度网盘资源

    1、上面我们已经将网站文件打包上传到了百度网盘了,日后如果有需要我们就可以将百度网盘中下载备份文件恢复到VPS主机上了。百度网盘目前来说下载速度还是不错的,但是可惜的只能单线程下载。

    2、这里部落再分享一下用Linux下的Axel多线程高速下载工具,来下载百度网盘的大文件。其实此方法最初还不是用来下载百度网盘备份文件的,不少朋友用它来下载百度网盘上自己或者别人存放的“大型文件”。

    3、CentOS安装Axel:

    32位CentOS执行下面命令:

    
    wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.i386.rpm
    rpm -ivh axel-2.4-1.el5.rf.i386.rpm
    

    64位CentOS执行下面命令:

    
    wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el5.rf.x86_64.rpm
    rpm -ivh axel-2.4-1.el5.rf.x86_64.rpm
    

    Debian/Ubuntu安装Axel:

    
    apt-get install axel
    

    Axel安装方法

    4、axel使用的格式是:(可选参数)-n   指定线程数,-o   指定另存为目录,-s   指定每秒的最大比特数,-q   静默模式

    5、例如用9个线程来下载百度网盘的资源,就是类似于:

    
    axel -n 9 "http://222.186.128.146/cdn.baidupcs.com/file/87671d01a637b83e5977353e7?xcode=45abddad=1765086594250528-727172238&time=1380794627&sign=FDTAXER-DCb740ccc551u3np1Tc%3D&&fn=tool.zip&wshc_siphost=ipdbm"
    

    6、这是用axel下载百度网盘资源的速度,9个线程已经达到了10MB/s左右,大家在用axel时线程最好不要超过100个。 (点击放大)

    Axel多线程下载速度

    7、当然我们也可以直接用Linux的Wget下载工具来下载百度网盘的文件,格式是:wget -c -O onlyone.tp,参数-c是断点下载,O是为下载的文件指定一个文件名,后面的onlyone.tp就是新命名的文件。操作如下:

    
    wget -c -O onlyone.tp "http://222.186.128.160/cdn.baidupcs.com/file/564f7b2886c01e5314463b33eb111054?xcode=00497548280707571-250528-148753LpXzLkD&to=cb&f7356&sh=1&fn=BoA%20-%20%A3%29.tp&wshc_tag=0&wsiphost=ipdbm"
    

    8、这是Wget下载百度网盘的文件速度,也达到1MB/s以上。

    百度网盘用Wget下载文件

    五、VPS自动备份文件到百度网盘和下载到本地操作

    1、通过上面的方法打包上传的文件都放在百度云的“我的应用数据”中。

    百度网盘我的应用数据

    2、进入我的应用数据中,可以看到你创建的应用项目,里面就有刚刚上传好的打包文件。

    百度网盘已经上传的文件

    3、这是将百度网盘的备份文件下载到本地,网站文件、数据库文件、服务器配置文件等都有,如果你还要想备份其它的文件,只需要在代码中加入路径即可。

    百度网盘下载到本地

    六、VPS自动备份操作小结

    1、由于百度网盘是国内服务器,使用美国VPS的朋友在上传和下载过程中会觉得速度不是特别快,百度网盘目前来说单个文件最大是4GB,如果你的网站备份打包超过了4GB,建议用压缩分卷的形式上传到百度网盘中。

    2、baidubd.sh代码中已经有了自动删除本地备份文件的功能,这是为了防止因为备份文件不断增多而占用服务器硬盘的情况发生。备份文件夹在备份的过程中会自动生成,备份完成后就自动删除。当然你可以修改成几天后再自动删除。

    文章出自:免费资源部落 http://www.freehao123.com/ 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

  • 相关阅读:
    JavaScript 简单说明(一)
    把mysql5.7源码包生成rpm包
    CentOS下pythonsqlite3安装
    No module named 'MySQLdb' python3.6 + django 1.10 + mysql 无法连接
    python3不再支持mysqldb 请用pymysql和mysql.connector
    元素的自定义特性
    获取元素的页面位置,兼容各浏览器
    通过正则格式化url查询字符串
    borderimage属性在chrome中的不同效果
    获取页面元素的滚动位置,兼容各浏览器
  • 原文地址:https://www.cnblogs.com/yiwd/p/3850626.html
Copyright © 2011-2022 走看看