導讀:如今的百度云盤免費容量都是2T了,即使把電腦上所有的東東都放上去,也還有大把的剩余空間。對于站長來說,是完全可以充分利用這些硬盤空間的,現在我們就用百度云盤來備份Linux服務器上的數據。
一直在想,要是百度云盤支持FTP多好,就可以實現Linux定時備份數據到百度云盤了。尤其在各云盤容量都達到T級后,更是有種浪費的感覺。
昨天無意間發現了一個腳本,可以實現Linux定時備份數據到百度云盤。
安裝bpcs_uploader
雖然關于bpcs_uploader的教程不少,但都千篇一律。雖然網上也有很詳細的教程,不過可能還有漏掉的細節。
廢話不多說了,開工。
下載程序包:
wget https://github.com/oott123/bpcs_uploader/zipball/master
解壓:
unzip master
默認的文件夾名字很長,為了方便以后操作,重命名文件夾:
mv oott123-bpcs_uploader-3a33d09 baidu
這里我將文件夾名字修改成了baidu,需要注意的是,以后的默認文件夾名字可能有所不同,畢竟程序會升級,你需要看一下解壓出來的文件夾名稱是什么。
進入程序目錄:
cd baidu
設置權限:
chmod+x bpcs_uploader.php
運行程序:
./bpcs_uploader.php
你可能會看到出錯提示,因為運行程序需要PHP環境,而你的服務器上的PHP路徑可能與程序中設置的不同,修改一下程序文件bpcs_uploader.php中的PHP路徑即可。
查看PHP路徑:
which php
編輯bpcs_uploader.php文件:
vi bpcs_uploader.php
將第一句#!后的路徑修改為你的PHP路徑,如果你安裝的是WDCP一鍵包,路徑為:/www/wdlinux/php/bin/php
登錄百度開發者中心:http://developer.baidu.com/
創建一個Web應用,應用名稱自定義,例如:huihuige,其他默認設置就可以了。
此時,我們可以得到該應用的API Key,運行./bpcs_uploader.php后首先要輸入的就是Key。
另外我們還要在應用管理中找到API管理,開啟PCS API,設置一個目錄,該目錄將用于存放服務器上傳過來的數據。
溫馨提示:開啟PCS API時設置的目錄不可更改,但可以在“操作”菜單中刪除應用重建。
輸入Key后,接下來需要輸入app floder name,也就是剛才開啟PCS API時設置的目錄名稱。
然后需要輸入access token,將你的Key填入以下地址相應位置,在瀏覽器打開得到的地址:
https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&client_id=KEY&redirect_uri=oob&scope=netdisk
然后你會看到一個寫著“百度 Oauth2.0”的頁面,將瀏覽器地址欄中的URL復制下來,找到access_token=和&之間的字符串,這就是access token,輸入access token后就完成了,你會看到SSH終端顯示出了你的百度云盤容量。
如果之前有安裝過bpcs_uploader,那么可以執行以下命令初始化:
./bpcs_uploader.php init
bpcs_uploader用法
查詢容量:
./bpcs_uploader.php quota
上傳文件:
./bpcs_uploader.php upload [path_local] [path_remote]
[path_local]是指服務器上的文件路徑,[path_remote]是指百度云盤中的路徑。
下載文件:
./bpcs_uploader.php download [path_local] [path_remote]
刪除文件:
./bpcs_uploader.php delete [path_remote]
離線下載:
./bpcs_uploader.php fetch [path_remote] [path_to_fetch]
自動備份腳本
接下來需要設置自動備份數據,網上有許多自動備份腳本,所以我就不再復述了。
這里要介紹的是,由于我們多半都在Linux服務器上安裝了控制面板,而控制面板都有自動備份數據的功能,比如WDCP就可以設置自動備份數據到/www/backup目錄,那么我們就不再需要自動備份數據的腳本了,只需要一個腳本將備份目錄下的所有文件上傳到百度云盤即可。
下載腳本至baidu目錄下:
wget http://www.huihuige.com/wp-content/uploads/2013/10/baidubd.zip
解壓:
unzip baidubd.zip
這個腳本實用于WDCP面板用戶,如果你的備份目錄不同,可以打開腳本修改。
測試腳本是否有效:
sh baidubd.sh
最后設置計劃任務:
crontab-e
加入一行:0 0 * * * /root/baidu/baidubd.sh
這里設置了每天的凌晨零點自動備份數據到百度云盤。