2007年10月14日 星期日

備份/同步軟體使用心得

除了Allway Sync, GoodSync,



被討論最多的, 大概要算是 Allway Sync, 和 GoodSync,

最經典的是這篇, (2006-11-12)

【下載】資料夾同步和備份的免費工具程式[論壇存檔] - PCZONE 討論區

而我使用 Cobian Backup 將近兩年, 從原本的 v7, 到後來的 v8,
最近趁著重灌電腦, 想試試看是否還有其他更好用的軟體,

在爬了一些文之後, 又發現另一篇
英文的 Folder Synchronizer Programs Review
http://www.tomkelsey.pwp.blueyonder.co.uk/projects/synchronizer_review.html


於是, 除了Allway Sync, GoodSync,
再加上 SyncToy, Unison, Cobian Backup, FileHamster


以下將依這些的特點來檢視一番

1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
要達到這個目的, 備份/同步軟體必需保留一些額外的資訊 (snapshot) 以記錄資料夾先前的狀態
單純的備份軟體, 如 Cobian Backup 就沒有這樣的特性,


2) 要能適當的處理 rename, move, delete 以達到同步的目的
試到目前為止, 似乎只有 SyncToy 和 FileHamster 能處理 rename, move, delete,
其他如 Allway Sync, GoodSync, Unison 都比較像是刪除&另外拷貝


3) 要能將覆寫或刪除的檔案備份下來


4) 要能管理檔案的版本
SyncToy 並沒有版本的概念, 而是把舊版本全部放在資源回收桶


5) 要方便復原備份
詳見以下每個軟體的分析


* Allway Sync 6.6.3
免費版有每 30 天 20000 個檔案的限制
1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
產生一個 _SYNCAPP 資料夾在最上層, 同時也用來存放覆寫或刪除的檔案備份
2) 要能適當的處理 rename, move, delete 以達到同步的目的
rename, move 會處理成刪除&另外拷貝
3) - 5)
應該都有, 不過沒特別去試

* GoodSync v6
類似 Allway Sync, 不過資料夾名稱為 _gsdata_
我覺得它的使用介面比較好用


* SyncToy 1.4
需要 .NET Framework
有五種模式可以設定 (轉貼)
  • Synchronize:新增、更新、重新命名以及刪除等動作,都會於另一個資料夾重複一次。
  • Echo:在來源資料夾(Left Folder)進行新增、更新、重新命名以及刪除等動作,都會於目標資料夾(Right Folder)重複一次。
  • Subscribe:目標資料夾(Right Folder)內容若有更新動作,會同步更新到來源資料夾(Left Folder)的相同檔案。
  • Contribute:來源資料夾(Left Folder)中新增、更新及重新命名等動作,會於目標資料夾(Right Folder)重複一次,但刪除的動作則不會。
  • Combine:新增及更新的動作都會於另一個資料夾重複一次,但重新命名及刪除則不會作用於另一邊。

1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
產生一個 SyncToyDirectoryId.txt 檔案在最上層作為識別之用,
實際的資訊則存在 c:\Documents and Settings\使用者名稱\My Documents\SyncToyData
2) 要能適當的處理 rename, move, delete 以達到同步的目的
看來能正確的處理簡單的 rename, move, delete,
但是不容易分辨左到右, 或是右到左的覆寫或刪除 (Allway Sync, GoodSync 則可以)
3) - 5)
SyncToy 並沒有版本的概念, 而是把舊版本全部放在資源回收桶
如果想同時保留一個以上的舊版本, 要設法從資源回收桶取出
復原的方便性也是一個問題,
p.s. 還沒試如果是網路磁碟 (別台電腦的分享目錄) 是否也是放在資源回收桶


* Unison 2.28.23 (需要 GTK+)
是 GNU Public License 的免費軟體, 可以用來同步資料夾,
在 Windows 下有 GUI 和 command line 版本,
但是 GUI 中無法做設定, 要自己手動編輯 profile, (profile 語法)
除此之外, 另一個遺憾是, 似乎無法設定 delete 傳播的方向,
而且已經停止開發, ....
1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
相關資料及 profile 存在 C:\Documents and Settings\使用者名稱\.unison
在 Win32 底下, Unison 還可以選擇用 File Create Time, 來作為快速判斷的依據
2) 要能適當的處理 rename, move, delete 以達到同步的目的
rename, move 會處理成刪除&另外拷貝
3) 要能將覆寫或刪除的檔案備份下來
可以選擇要 "分散" 存在每一層, 或集中管理, 但不能分別存在每一邊
4) 要能管理檔案的版本
待測,
5) 要方便復原備份
待測, 要另外手動還原?


* Cobian Backup 8.4.0.202
1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
2) 要能適當的處理 rename, move, delete 以達到同步的目的
單純的備份軟體, 沒有這樣的特性,
3) 要能將覆寫或刪除的檔案備份下來
忠實的把每一次的備份保留下來 (可以自動定時執行), 本身並不會處理覆寫或刪除
4) 要能管理檔案的版本
依備份執行的時間 (而非檔案本身的時間) 存為壓縮檔或未壓縮檔
(ProfileName)_2007-10-14-10-52-13.zip
(ProfileName)_2007-10-14-09-22-49.zip
5) 要方便復原備份
手動還原


* FileHamster (需要 .NET Framework) 1.5.1.0
其實不是 備份/同步軟體, 而是 版本管理軟體,
放在這裡比較的目的, 是用來補足其他 備份/同步軟體 的不足
FileHamster 不需要資料庫, 也不需要 check-in, check-out,
只要設定要監視的目錄或檔案即可,
1) 要能偵測檔案變更, 而不只是靠 archive (備份) 屬性
可以自訂一個以上的 "Library" (預設是 C:\FH.Backups), 用來存放檔案備份和相關資訊
預設會拷貝每一個檔案的初始備份到 "Library", 但也可以中途取消的拷貝動作,
FileHamster 會在後續檔案變更時, 再訊問要如何處理,
==> FileHamster 似乎是這些軟體中, 唯一即時處理檔案變更的,
不過它佔的記憶體也較多, 目前觀察是 50~數百MB 以上
2) 要能適當的處理 rename, move, delete 以達到同步的目的
初步測試, 看來也是即時處理 rename, move, delete
但如果沒有拷貝每一個檔案的初始備份, 有時會沒有留下 delete 的備份,
3) 要能將覆寫或刪除的檔案備份下來
4) 要能管理檔案的版本
檔案的各個版本會儲存在 X:\FH.Backups 的相對子目錄, 如:
Documeron.dat{Rev 2007;10;14 09;02;00 AM}.dat.zip
Documeron.dat{Rev 2007;10;14 09;01;13 AM}.dat.zip
另有付費的 plus 版, 似乎可以做版本的群組管理
5) 要方便復原備份
可以直接 drap-and-drop, 也可以到 X:\FH.Backups 的相對子目錄去找
另有 DiffPlugin 可以在 FileHamster 中選擇兩個版本, 呼叫外部程式進行比對,
另有 zipPugin 可以減少備份的空間






結論:

我的建議是,
* 檔案不多, 也不常大量 move, rename 的就使用 免費版的 Allway SyncGoodSync
* 像我這種重度使用者, 或許會是 SyncToy + FileHamsterCobian Backup + FileHamster
* 至於 Unison, 如果繼續發展, 應該是很有潛力......, 因為它還有 RSync
(只傳遞大檔案有修改的 token ....), 或者想挑戰的人, 可以鑽研一下 profile 的設定,







以下為沒列入討論的軟體, 僅列出我小試的簡單筆記, (就不翻成中文囉~~)


BackupChunker-2.0-Free.exe
- no schedual
- one project at a time
- single (forward or backward) direction only
+ store deleted file


ozSync.zip
- cannot schedule individual job
+ no need setup


Synkron
* backup updated files to "documents and settings"
- no preview
- no update (move, delete, ...) detect
+ able to search (filter) log


ComodoBackUp_Setup_1.0.2.0.exe
- single direction sync only


File Backup Watcher (Free edition)
- no backup option (only full backup)


pathSync
- no schedual
- no update detect


VersionBackup_4.1_FE.exe
- wizer type setup
- cannot manual or schedule individual job


Verjet - Version control for everyone
誇張的例子, 如 Verjet, 一開始就會拷貝每一個檔案的初始備份
還有每一個檔案的相關資料 "分散" 存在每一層的隱藏目錄裡,
也就是至少要多出一倍以上的硬碟空間,
而且 "分散" 的存放方式, 以後會非常麻煩

3 意見:

發表您的回應
  1. timeternity 提到...

    謝謝分享!

  2. vizKen 提到...

    Directory.Synchronizer
    http://www.archersoft.com/
    個人覺得這套還不錯

  3. 水瓶尤加利 提到...

    謝謝分享!

    Gizmo's Support Alert Newsletter 提供的免費放送, 據說價值 $40 美元, 初步看來不會輸給 Allway Sync, GoodSync, SyncToy, Cobian Backup 等軟體, 詳情請見
    Freeware - 免費軟體更新報 2008-06 -- 備份軟體免費放送到七月一日

張貼留言