Featured image of post 使用 GNU Parallel 加速 RSync 同步小檔案

使用 GNU Parallel 加速 RSync 同步小檔案

rsync 在同步大量小檔時速度較慢,在無法壓縮後再同步的情況下,可以使用 parallel 來加速 rsync 的速度。

最後更新
約 350 字

前言

parallel 是一種能夠在多個 CPU 核心上並行運行命令或者腳本的 shell 工具,而 rsync 則是一種用於同步檔案和目錄的工具。當這兩者結合使用時,可以實現在多個 CPU 核心上並行同步檔案和目錄。

這種組合的主要優點在於提高效率。如果你需要同步大量的檔案,parallel 可以將這些工作分散到多個 CPU 核心上,從而加快同步速度。這不僅可以節省時間,因為多個同步操作可以同時進行,而且還可以提高資源利用率,因為它確保了所有的 CPU 核心都在工作。

此外,parallel 還提供了很多選項,讓你可以根據需要來控制並行操作的數量、順序等,這增加了這種方法的靈活性。

用法

同步

1
find <SOURCE> | parallel -X -j 10 -r rsync -azvu "{}" <TARGET>

以 10 線程同步 <SOURCE><TARGET>

同步 + 刪除

1
find <SOURCE> | parallel -X -j 10 -r rsync -azvu --delete "{}" <TARGET>

以 10 線程同步 <SOURCE><TARGET>,並在 <TARGET> 中刪除 <SOURCE> 不存在的檔案。


使用 Hugo 建立
主題 StackJimmy 設計