rsync小文件大数据集5TB,+M个小文件

h.s*_*afe 7 rsync copy transfer

我遇到过应用服务器配置错误导致创建大约 5TB 数据集的情况,其中每个目录包含大量小文件。我们正在传输文件并更改应用程序,但 rsync 在传输数据时失败。它甚至在本地驱动器之间本地失败。我一夜之间只复制了3.5G!我试图更改 rsync 开关,但仍然没有运气。这是当前在服务器上运行而没有任何进度指示的内容: rsync -avhWc --no-compress --progress source destination 有人建议使用 gigasync,但 github 和站点不可用。有人可以建议一种传输文件的方法吗?感谢任何帮助

Luc*_*lli 4

尝试 xargs+rsync:

 find . -type f -print0 | xargs -J % -0 rsync -aP % user@host:some/dir/
Run Code Online (Sandbox Code Playgroud)

您可以控制将多少个文件作为源传递给每次 rsync 调用,例如-n 在每次 rsync 时复制 200 个文件:

 find . -type f -print0 | xargs -n 200 -J % -0 rsync -aP % user@host:some/dir/
Run Code Online (Sandbox Code Playgroud)

如果速度太慢,您可以使用以下选项并行运行 rsync 的多个副本-P

find . -type f -print0 | xargs -P 8 -n 200 -J % -0 rsync -aP % user@host:some/dir/
Run Code Online (Sandbox Code Playgroud)

这将并行启动 8 个 rsync 副本。