我記得幾年前 (應該是 2002-2005 間),為了妥善保存自己在 Debian 上的各種工作資料,希望能夠用比較加密過的方法,將資料寫到光碟中。當時的想法是利用類似 cdbackup 與 mcrypt 等工具,將資料以自訂的檔案格式與加密演算法存到光碟中。
這種方式有幾個好處。
- 第一,由於格式完全自訂,並非 ISO/CDFS,因此一般電腦軟體是無法辨識解讀的。
- 第二,即便 Image 被強取出來,還是要猜出所用得演算法與金鑰,才能解壓出原始檔案。
- 第三,當時光碟平均儲存成本比硬碟低,可以多燒幾份異地備援。
壞處是,幾年前資料頂多幾百 Mb,備份燒錄進 CD or DVD 還沒有問題,但是現在媒體資料、程式碼等等幾乎都是動輒幾 G 以上,用光碟實在太慢、太麻煩了。而且這個方法不支援循序備份,每次都是完整備份。由於太慢、太麻煩,你可能幾天或幾周才做一次備份,偶爾備份間的空窗期就會漏掉重要資料。備份重點就是隨時有一份最新的重要工作文件的副本阿。另外一個問題是,沒有良好的備份紀錄管理工具 (archive viewer),所以你每次想查檔案就得重新解開整片光碟才能找到。
第三個問題是,光碟其實是非常不保險的儲存媒體。過個幾年,當時備份用的光碟,可能就變質而無法讀取。更糟糕的是自訂的格式,沒有考慮容錯 (Error detection and correction),所以更難從變質、損壞的 CD 中把資料取出來。若不幸,你買到一批塗料品質不佳的光碟片,或功率老化的光碟機,那幾年後才後悔都已經來不及了。
重新調查了新的備份方式,目前改用的其中一個方法是 duplicity,duplicity 有幾個特色符合我的需求
- 用 GnuPG 加密與簽章壓縮檔。
- 支援循序備份,並用 rsync 來傳送備份檔案。
- 備份檔中用標準的 tar 跟 rdiff 產生的 delta 檔。
- 支援多種備份的網路檔案協定 – local file storage, scp/ssh, ftp, rsync, HSI, WebDAV, and Amazon S3
所以如果你願意的話,你可以花一點小錢,把已 PGP 加密過到檔案,傳到 S3 上做雲端備份。;-) 這樣就不用擔心一些線上備份服務 (Dropbox, Ubuntu One, SpiderOak),用一些曖昧不明的加密方式或根本不加密的方式儲存你的檔案。
預設使用方法很簡單,就是 duplicity /home file:///tmp/home 這樣即可使用。你若太懶,只是一般使用者不想下指令的話,也可以裝 Déjà Dup,操作超簡單,只需滑鼠點點點就可以設定備份的目錄,跟要儲存的位置。還原也是利用視覺介面點選後,就可以解壓縮出來。
當然,技客如你,可能會需要複雜一點的手稿,來儲存各種不同分類的檔案,這裡僅分享一個我自己用得小 Script.
Pingback: Rex's blah blah blah » 用 GnuPG/PGP 加密備份資料()