經過一年半的發展 發射 新版本 同步 3.2.4, 進行了一系列改進和錯誤修復的版本。
對於那些不熟悉 Rsync 的人來說,你應該知道這個 是一個文件同步和備份實用程序 它提供了增量數據的有效傳輸,它還可以處理壓縮和加密的數據。
使用增量編碼技術,它允許您同步文件和目錄 兩台機器之間 通過網絡或在同一台機器上的兩個位置之間, 最小化傳輸的數據量。
在大多數程序或協議中沒有發現 Rsync 的一個重要特性是,複製發生時每個方向只有一次傳輸。 Rsync 可以復製或顯示包含的目錄和復製文件,可選擇使用壓縮和遞歸。
作為服務器守護進程,Rsync 默認偵聽 TCP 端口 873,以原生 Rsync 協議或通過遠程終端(如 RSH 或 SSH)提供文件。 在後一種情況下,Rsync 客戶端可執行文件必須安裝在本地和遠程主機上。
Rsync 3.2.4 的主要新聞
在這個 Rsync 3.2.4 的新版本中 提出了一種新的參數保護方法 從類似於以前可用的“–protect-args”(“-s”)選項的命令行,但是 不會破壞 rrsync 腳本 (rsync 受限)。
保護 歸結為特殊的轉義字符,包括空格,將請求傳遞到外部 shell 時。 新方法不會轉義引用塊中的特殊字符,允許引用文件名而無需進一步轉義,例如“rsync -aiv host: 'a simple file.pdf' is now allowed”。 要返回舊行為,建議使用選項“–old-args”和環境變量“RSYNC_OLD_ARGS=1”。
這個新版本中突出的另一個變化是 實現了更新 xattrs 屬性的能力 如果用戶有權更改訪問權限(例如,以 root 身份運行時),則用於只讀模式下的文件。
添加並通過默認參數“–info=NONREG”啟用以顯示有關傳輸特殊文件的警告。
劇本 atomic-rsync 已用 Python 重寫並擴展了忽略代碼的能力 返回非零。 默認值是忽略代碼 24,它在 rsync 運行時文件丟失時返回(例如,對於在初始索引時存在但在初始索引時被刪除的臨時文件返回代碼 24)。遷移)。
解決了處理小數點字符的長期問題 基於當前語言環境。 對於設計為僅處理字符“.”的腳本。 在數字方面,如果違反兼容性,您可以設置“C”語言環境。
此外,還修復了 zlib 庫包含的代碼中的漏洞(CVE-2018-25032),該漏洞在嘗試壓縮特別準備的字符序列時導致緩衝區溢出。
其他變化 從這個新版本中脫穎而出:
- 實現了“–fsync”選項以在每個文件操作上調用 fsync() 函數以刷新磁盤緩存。
- rsync-ssl 腳本在訪問 openssl 時使用“-verify_hostname”選項。
- 添加了“–copy-devices”選項以將設備文件複製為普通文件。
- 減少增量傳輸大量小目錄時的內存消耗。
- 在 macOS 平台上,啟用了“-atimes”選項。
- rrsync(受限 rsync)腳本已用 Python 重寫。
- 添加了新選項“-munge”、“-no-lock”和“-no-del”。
- 阻止選項“--copy-links” (-L)、“--copy-dirlinks” (-k) 和“--keep-dirlinks” (-K) 默認啟用,以便更有效地操縱指向目錄的符號鏈接的攻擊難的。
- munge-symlinks 腳本已用 Python 重寫。
最後,如果您有興趣能夠了解更多,可以在 以下鏈接。