Linux
如果重命名文件名,則重複性會重新發送所有數據
讓我們創建一個
test/
包含隨機 1 GB 文件的目錄: ,然後使用duplicityhead -c 1G </dev/urandom >test/1GBfile
進行備份:duplicity test/ file:///home/www/backup/
然後
/home/www/backup/
包含一個加密存檔,大約需要 1 GB。然後讓我們添加一個幾個字節的新文件:
echo "hello" >test/hello.txt
,並重做備份:duplicity test/ file:///home/www/backup/
仍然是
backup/
〜1 GB。與增量備份一樣,只創建了幾個小於 1 KB 的文件。現在讓我們重命名 1 GB 文件:並重
mv test/1GBfile test/1GBfile_newname
做增量備份:duplicity test/ file:///home/www/backup/
然後
backup/
是現在〜2 GB!.為什麼不
duplicity
考慮它是具有新名稱的相同文件內容這一事實?在這裡,如果我們使用網路,即使文件內容完全相同,我們也會浪費 1 GB 的傳輸。
duplicity
使用rsync
通常會解決此問題的使用者,是否有避免此問題的選項?添加 .txt 文件後的日誌:
--------------[ Backup Statistics ]-------------- StartTime 1605543432.43 (Mon Nov 16 17:17:12 2020) EndTime 1605543432.72 (Mon Nov 16 17:17:12 2020) ElapsedTime 0.29 (0.29 seconds) SourceFiles 3 SourceFileSize 1073745926 (1.00 GB) NewFiles 2 NewFileSize 4102 (4.01 KB) DeletedFiles 0 ChangedFiles 0 ChangedFileSize 0 (0 bytes) ChangedDeltaSize 0 (0 bytes) DeltaEntries 2 RawDeltaSize 6 (6 bytes) TotalDestinationSizeChange 230 (230 bytes) Errors 0 -------------------------------------------------
文件重命名後的日誌:
--------------[ Backup Statistics ]-------------- StartTime 1605543625.97 (Mon Nov 16 17:20:25 2020) EndTime 1605543840.72 (Mon Nov 16 17:24:00 2020) ElapsedTime 214.76 (3 minutes 34.76 seconds) SourceFiles 3 SourceFileSize 1073745926 (1.00 GB) NewFiles 2 NewFileSize 1073745920 (1.00 GB) DeletedFiles 1 ChangedFiles 0 ChangedFileSize 0 (0 bytes) ChangedDeltaSize 0 (0 bytes) DeltaEntries 3 RawDeltaSize 1073741824 (1.00 GB) TotalDestinationSizeChange 1080871987 (1.01 GB) Errors 0 -------------------------------------------------
TotalDestinationSizeChange 1080871987 (1.01 GB)
,啊!該文件剛剛被重命名!
似乎
duplicity
確實沒有“處理重命名”,請在此處查看此專欄:https ://wiki.archlinux.org/index.php/Synchronization_and_backup_programs#Chunk-based_increments由於
duplicity
使用librsync
(不“處理重命名”),這似乎很正常。