rsync 會節省大量資料傳輸以進行同步嗎
1)壓縮文件,
2) ASCII 裝甲 GPG 加密文件,以及
3) Mathematica .mx 文件,
分別 ?
典型的情況是我已經有一個舊副本,並且壓縮和/或加密的文件不是唯一要同步的文件,即可以存在未壓縮和未加密的文件。
答案1
加密或壓縮檔案的問題在於,即使只修改了資料中的一個字節,所有剩餘的檔案內容都是不同的,而不僅僅是更改的資料位元組。
這違背了 rsync 用於減少資料傳輸的一種策略 - 即僅傳輸檔案的變更部分而不是整個檔案。
因此,除非需要磁碟空間,否則不要壓縮資料(在這種情況下,請使用基於磁碟的壓縮,因為這對 rsync 等應用程式是透明的)。
不要加密數據,除非您需要在電腦(或磁碟)被盜或遺失時保護數據的隱私。 (請保留資料的備份,尤其是加密金鑰或還原金鑰的備份)。同樣,全磁碟加密對 rsync 效能的影響可能最小(但當硬碟發生故障且資料備份不可用時,或者當您重新安裝作業系統而不備份作業系統時,最有可能導致災難性的資料遺失。其他數據磁碟/分割區的復原金鑰)
上述假設(大量)相關的未壓縮/未加密檔案可能會不時進行部分變更(透過編輯或附加某種形式),而檔案中的大部分資料保持不變。
答案2
如果您僅同步一個檔案且該檔案已加密或壓縮,則您可能節省的唯一頻寬是在未變更的情況下根本不需要傳輸它。
但是,如果您的目錄充滿了 ZIP、JPEG 或 GPG 文件,rsync 仍然只傳輸那些已更改的文件,並且是輕鬆傳輸新文件的好方法。
注意:我發現盡可能 rsync 未壓縮的資料很有用,然後在必要時將其壓縮以儲存在連結的兩側。透過這種方式,您可以節省傳輸頻寬。 IE:
mkdir /tmp/torsync
cd /tmp/torsync
unzip /home/me/somefile.zip
rsync -avz . remote:/tmp/somefile
ssh remote 'zip -r somefile.zip /tmp/somefile'
當然是YMMV。
OT:憑藉其備份選項,我發現 rsync 即使在不節省頻寬的情況下也很有用,因為它會建立替換檔案的備份副本,使我能夠輕鬆檢索歷史副本。
後續:這適用於涉及壓縮或加密的所有格式,但我對 Mathematica 使用者不熟悉。