Jak*_*son 77 usb rsync ubuntu-9.10 usb-flash-drive
我正在运行 rsync 以将目录同步到我的外部 USB 硬盘上。这是大约 150 演出数据。我猜有 50000 多个文件。
它目前正在运行它的第一次同步,但其复制文件的速度仅为 1-5 MB/s。对于 USB 2.0 外壳来说,这似乎非常慢。驱动器上也没有发生其他传输。
以下是我使用的选项:
rsync -avz --progress /mysourcefolder /mytargetfolder
Run Code Online (Sandbox Code Playgroud)
我正在运行 Ubuntu Server 9.10。
Sco*_*mer 60
如果您在同一台机器上使用具有快速网络或磁盘到磁盘的 rsync,
不使用压缩 -z
并使用 --inplace
将其加速到硬盘或网络的性能
压缩使用大量 CPU
不使用就地使硬盘震动很多(它在创建最终文件之前使用临时文件)
压缩和不使用就地更适合通过互联网进行(慢速网络)
新:注意目的地......如果启用了 NTFS“压缩”......这会严重减慢大文件(我会说 200MB+) rsync 几乎似乎停滞不前,这是由这个引起的。
use*_*307 42
对于第一次同步只需使用
cp -a /mysourcefolder /mytargetfolder
Run Code Online (Sandbox Code Playgroud)
rsync 仅在目标为空时增加开销。
此外.. -z 选项可能会降低您的性能,如果您不是通过慢速链接传输数据,则不应使用它。
小智 42
使用该-W选项。这将禁用增量/差异比较。当文件时间/大小不同时,rsync 会复制整个文件。
同时删除该-z选项。这仅对压缩网络流量有用。
现在rsync应该一样快cp。
小智 36
首先 - 在这种情况下文件的数量将是一个主要因素。每个文件的平均大小为 3MB。在 OP 的情况下,可能存在影响速度的 io 瓶颈。更多在这里- 这是一个非常枯燥的阅读,但封面图片是值得的。
那么,使用 rsync 复制到一个空目录?以下是一些加快速度的方法:
rsync -a /source /destination >/somewhere/rsync.out 2>/somewhere/rsync.err-第一>基本打印文件,所有你通常会看到的东西,和2>指的错误消息。我的命令是:
rsync -avAXEWSlHh /source /destination --no-compress --info=progress2 --dry-run
如果一切看起来不错,我会删除“--dry-run”并放手。A、X 和 E 涵盖了 -a 未涵盖的扩展属性和权限,l 用于软链接,H 用于硬链接,h 用于人类可读。
在 USB 驱动器或同一驱动器上或通过网络更新已同步的目录,都需要不同的 rsync 命令来最大限度地提高传输速度。
奖励-这是 rsync 手册页,如果您想测试硬盘驱动器速度,bonnie++是一个不错的选择,对于您的网络速度,请尝试iperf。
*这篇文章已经有将近十年的历史了,但搜索引擎肯定喜欢它,我一直在看它。这是一个好问题,我认为“如何加速 rsync”的最佳答案不应该是“改用 cp”。
小智 6
你肯定想尝试一下rclone。这件事太快了:
$ tree /usr [...] 26105 个目录,293208 个文件
$ sudo rclone 同步 /usr/home/fred/temp -P -L --transfers 64
已传输:17.929G / 17.929 GBytes、100%、165.692 MBytes/s、ETA 0s 错误:75(重试可能有帮助) 检查:691078 / 691078、100% 已传输:345539 / 345539、100% 已用时间:1m50.8s
这是 LITEONIT LCS-256 (256GB) SSD 的本地副本。
您可以在第一次运行时添加 --ignore-checksum 以使其更快。
-z/ --compress:压缩只会增加 CPU 的负载,因为传输不是通过网络而是通过 RAM。--append-verify:恢复中断的传输。这听起来是个好主意,但它有危险的失败情况:任何与源文件大小相同(或更大)的目标文件都将被忽略。此外,它在最后对整个文件进行校验和,这意味着--no-whole-file在添加危险的故障情况时不会显着加快速度。-S/ --sparse:将空值序列转换为稀疏块--partial或者-P是--partial --progress:保存所有部分传输的文件以供将来恢复。注意:文件不会有临时名称,因此请确保在整个复制完成之前没有其他任何东西会使用该目标。--no-whole-file以便任何需要重新发送的内容都使用增量传输。读取部分传输的文件的一半通常比再次写入要快得多。--inplace避免文件复制(但前提是在整个传输完成之前没有任何内容正在读取目标)