災難是:
前人建立某個帳戶,家目錄在 /,用 userdel -r 清理舊帳戶,時間過久才發現災難已經造成。兩個月前閒來無事,有做系統總備份,httpd 和 mysql 是兩個月前的紀錄,客戶難免唉唉叫。救災完畢後,使用 git 建立每日備份。
主機特性是代管客戶網頁資料,包含圖片和資料庫。
概略步驟是:
1. rsync 初始,git init
2. 每日 rsync 同步,git commit
3. 每日產生 git bundle
Webpages
使用 rsync 將來源抓到工作目錄,然後在工作目錄建 git 資料夾。
接著每天做備份
最後每天產生 git bundle
MySQL
和 webpages 相似的步驟,先初始接著每天備份,產生 git bundle
最後產生 git bundles
還原
後記
災難後尋找備份方案時,見到有人每日、每週、每月做不同程度的備份。記得將每日的動作放進 crontab 定時執行,放在離峰時間比較不影響服務品質。資料搞失或資料復原都需要付出慘痛的代價,如果能做成自動化,可以降低很多反應時間和損失。