[資料備份] 虛擬主機 VPS 自動備份到 ASUS Web Storage

也許有人還記得今年年初所發的 『[VPS 備份] 定時自動備份到 Google Site 上!!
使用了一小段時間後! 發現了一些不方便的小地方!
上傳上去的檔案若要還原~ 必須要那亂七八糟的『檔案櫃』內找到我們要的檔案,尋找時還要注意時間! 真的挺不方便的!!
檔案抓回來要還原~ 還要到 cmd 下面去合併!! 這有不少站長都不會操作也是一大問題!!

我一直有再考慮替代辦法! 可以讓各位站長可以輕鬆備份自己所管理的主機! 這時突然想到N年前我的比電上曾附送了一個ASUS雲端的試用帳號,趕快拿出來用用看! 雖然這幾年內看似沒有太大的變化! 不過至少整體印象還不錯 哈哈 XD

在因緣際會之下~ 我申請到了開發授權~ 在開發圖中也出了一堆狀況 哈哈 XD 在此要感謝一下 ASUS 工程師 這麼熱心的幫我解決開發上的問題!! 早上發信詢問! 中午就會得到答案! 真的很讚!!

這次搭配使用 ASUS雲端 的備份程式~ 在管理上會比較方便,因為AWS的檔案管理界面還挺不錯的!!
且有內建搜尋功能! 資料夾分層也都很讚!
重點是搭配她們的應用程式~ 還可以備份自己電腦的東西 哈哈 XD

使用需求:
支援PHP 5 並且支援 ioncube
支援Curl


第1步:下載備份程式
載點:aws_20120622203954.rar (26KB)
解壓縮密碼:skyboxs.net

第2步:設定備份目錄
此目錄的內容都會上傳到 aws 裡面去
所以只要把要備份的東西 丟進來就可以了

第3步:編輯 backup.sh 設定登入帳密
aws_user 你的 asus 帳號

aws_passwd
你的 asus 密碼
aws_folder_name 到時會再跟目錄建立的目錄名稱

第4步:掃瞄子目錄
在上傳的時候程式會去掃描 backup_dir 所設定的目錄內容
aws_scan_subdirectories 選項可以設定要不要上傳 backup_dir 裡面的目錄的檔案
1 是要
2 是不要 XD
如果頻寬夠! 東西又不多~ 就備份吧!

第5步:啟用MySql 備份
如果您不響要備份MySql 請把 db_enabled 設定 0 (1 為要備份)
db_user 設定登入帳號
db_passwd 登入密碼
db_host 主機位置

第6步:執行備份
傳到主機上後 記得增加上執行權限 ( chmod +x backup.sh )
執行看看是否能正常備份!

第7步:成功備份的話會在aws內看到你的備份檔案囉!!

第8步:讓 backup.sh 自動幫你打包目錄
程式第 25 行~ 是一個打包指令! 只要把註解去掉 打包目錄 和儲存檔案修改一下就行了!!
另外! 這是有包含切割的! 每 15m 割為一個檔!
aws 也是有限制單檔大小的! 你可以看看你的帳號權限 單檔可以多大! 就在此設定吧!!

第9步:簡單問與答!
Q. AWS主機在哪~? 會不會傳很慢?
據我所知 台灣 美國 大陸 日本 都有機房!
美國、荷蘭 主機上傳測試速度都算正常! 只有加拿大的弱很多!! 只好先傳到美國~ 在傳到 aws 上囉!!

Q. 為什麼PHP要加密?
因為裡面包含了一些開發者資訊! 所以不方便公開!

Q. 每天都備份 我的 AWS 會不會很快爆
基本上備份的東西都會覆蓋上次備份的,所以只會計算一個的容量,但是~ AWS會很好心的幫我們保存之前的舊版本,在檔案旁邊有可以選擇『險是舊版本』 就可以把檔案抓回來囉!
如果你真的很多東西要備份! 就建議你升級帳號囉!! 這樣更有保障!!

10 comments on “[資料備份] 虛擬主機 VPS 自動備份到 ASUS Web Storage

    • 如果啦~
      可以把 網站自動備份到 AWS
      改成把 免空檔案自動載到 AWS
      我想會更多人使用
      哈哈

      Sky37042回覆:
      哈~ 可能會丟出原始碼讓大家架設吧?! 不太可能我架給大家用 XD

  1. Hi !
    我也測試一下,不錯用….
    如果有空可以試一試 是否讓OTP enable 帳號也可以 run (因為 需OTP 認證所以只用 username/password 無法上傳.
    Cody.

    Sky37042回覆:
    您好!
    如果我沒記錯OPT是每次登入都要輸入不同的登入代碼…. 這樣可能會變成每次備份都要你先輸入OPT的動態密碼
    這部份的解決辦法 我就要去問一下ASUS 的工程了!….

    • Hi !
      目前 AWS’s “Remote Drive" & “Cloud Connect for Outlook" (兩者我有試用. Beta ver.) 也還沒支援 OTP, 應該下一個版本就ok …
      我猜啦….
      BTW, 如何秀出 Icon ?? 是 “個人網站" 欄位?
      Thanks.

      Sky37042回覆:
      您好!
      不太懂您要在哪裡顯是你的 icon ? “個人網站" 欄位?

    • 哈哈 ….
      我不會寫程式, 也沒有網站… 因為 FDZone close down .. 沒地方好逛. 就來這學習學習…..

      Thanks,

      Sky37042回覆:
      您好!
      asus 給了回應

      基本上, OTP (One Time Password) 的用意原本就是在增加Security,
      如果有可以透過某種方式避掉OTP, 就表示在資安上有漏洞,
      那麼我們就不值得客戶信任了, 您說是嗎 ?

      以我們自己對OTP的操作方式, 也會在客戶申請OTP前告訴客戶,
      申請了OTP將會有那些服務沒辦法使用。

  2. 便利性 & Security …. 每個人各取所需….
    BTW, run backup.sh 時 php 會有一些 warning message …. 不知如何避免….
    Q
    PHP Notice: Undefined variable: header in /home/Cody/aws.php on line 0
    PHP Notice: Undefined index: SERVER_PROTOCOL in /home/Cody/aws.php on line 0
    PHP Notice: Undefined variable: status in /home/Cody/aws.php on line 0
    PHP Notice: Undefined offset: 2 in /home/Cody/aws.php on line 0
    PHP Notice: Undefined offset: 2 in /home/Cody/aws.php on line 0
    PHP Notice: Undefined offset: 2 in /home/Cody/aws.php on line 0
    PHP Notice: Undefined offset: 2 in /home/Cody/aws.php on line 0
    PHP Notice: Undefined index: timestamp in /home/Cody/aws.php on line 0
    PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Chongqing’ for ‘CST/8.0/no DST’ instead in /home/Cody/aws.php on line 0
    Uq.
    Thanks,

    Sky37042回覆:
    您好!
    您的環境應該是 php 5.3 吧~
    前幾行的 Notice 只是提示而已! 不影響程式運作! 想要不顯示他 將php.ini內的reporting部份修改
    error_reporting = E_ALL; display all errors, warnings and notices
    改成
    error_reporting = E_ERROR & ~E_NOTICE & ~E_WARNING

    最後一行的 date 錯誤 是 php 5.3 強制你要設定時區 這個在 php.ini 內可以設定
    date.timezone = Asia/Taipei

  3. 了解…. 昨日才第一次使用 PHP 環境 來跑您的程式… 所以一些 setting 不清處….
    謝了….

    Cody.

    Sky37042回覆:
    您好!
    不知您的主機是在跑什麼東西 XD

  4. Shared Hosting沒ionCube沒辦法用XD

    Sky37042回覆:
    現在也不推薦了,我因為備份伺服器被停權了