慢速網路的備份系統

慢速網路的備份系統

我正在嘗試提出一些備份系統,該系統允許我在每次進行新備份時傳輸最少量的資料。

目前,我正在透過口是心非對 smb 掛載進行增量備份。目前我的速度限制在 1MB/s 左右(wifi/ndiswrapper 很愚蠢,但仍然 - 我不會通過修復它來獲得超過 5 倍的加速)。

不幸的是,刪除、修改等資料使得增量備份很難永遠保留。我無法輕鬆地將它們扁平化為完整備份,而製作 40+GB 的完整副本現在需要一點時間。

我希望透過新系統實現一些目標,還有一些我不太在意的目標:

  • 我想要幾個檢查點,但可能不超過 2 或 3 個
  • 我不關心加密,因為儲存位於本地網路上
  • 壓縮會很好,但我想我可以只使用檔案系統/設備壓縮
  • 我希望能夠完全刪除除最新備份之外的所有內容,而不必強迫我再次進行完整複製

這似乎可以透過 rsync + 循環設備壓縮 + fs 快照來實現...但不幸的是我的設備並不真正支援快照。它只是獲得了標準 debian 支援的檔案系統列表,我真的不想使用 btrfs 進行備份。

有類似的解決方案嗎?我還能如何接近它?

編輯:我認為快照部分實際上可以使用lvm只讀快照來完成。這也將為行為不良的應用程式提供另一層保護。

答案1

快照透過使用硬連結和 rsync 進行增量備份 - 如果檔案與上次執行備份時相同,則它只是硬連結它。因此,如果您不進行任何更改並每小時運行 rsnapshot 三個小時,您將擁有三個資料夾:

hourly.0
hourly.1
hourly.2

每個檔案似乎都包含「完整」備份,但每個檔案只有一個副本駐留在磁碟上。這意味著,如果刪除 hourly.2,hourly.1 和 hourly.0 仍將包含所有檔案。您可以設定備份頻率和快照數量。

這將實現您的第一個目標,但是目標檔案系統必須支援硬連結才能實現此目的。

另一種方法是使用 rsync +左心室容量備份設備上,並定期拍攝快照。 LVM 快照是「寫入時複製」磁碟區,透過重新使用與快照磁碟區相同的區塊來保持與原始磁碟區相同,除非區塊發生更改,否則快照磁碟區僅儲存不同的區塊。因此,可以調整其大小以匹配備份之間快照的磁碟區的變化率。

壓縮會很好,但如果您不想使用 btrfs,那麼需要透過循環或熔絲進行某種檔案系統壓縮。

相關內容