rsyncd
与 ssh 相比,使用 rsync 有什么实际好处吗?真的提高速度、稳定性还是其他?
答案1
rsyncd
我认为最大的区别在于,如果您在服务器端使用,而不是rsync
通过ssh
,服务器已经知道它有什么,因此构建文件列表以确定需要传输的内容要简单得多。如果您只是推送几个文件,这不会有什么区别,但如果你正在制作,例如,亚太网络可以通过 rsync 获得,您不需要每次都在源端构建文件列表。
答案2
rsync
这是一个老问题,但是使用守护进程模式而不是通过 ssh 还有另一个非常有效的理由:
- 降低 CPU 开销。
我有一台 10 TB NAS,它备份到另一台 10 TB NAS,而 SSH 隧道的加密开销是传输的限制因素。这两台 NAS 都是相当低功耗的 1.8 Ghz Intel Atoms,即使使用更简单的 ssh 加密选项(例如ssh -c arcfour
作为 ssh 调用传递给 rsync),加密开销在千兆以太网上仍然最多只能达到 200-300 Mbps。
在一端使用 rsync 守护程序可消除加密开销,并实现大型连续文件的 >800 Mbps 传输。
答案3
rsyncd(带有守护进程的 rsyncd)默认使用端口 873。
这将使用本机 rsync 协议,但不加密任何内容。它仅适用于本地或受信任的网络。
如果您想要安全性,您始终必须通过 SSH 使用 rsync 或 rsyncd,您的所有数据传输都将通过 ssh 协议进行。
答案4
的功能rsyncd
是在服务器上运行并响应(远程)rsync
请求。
(当我们说rsyncd
‘rsync
作为守护进程运行时’,当我们说‘远程’时,我们的意思是从运行的机器的角度来看是远程的rsyncd
)
两个都将使用 ssh 来安全地互相通信。
这实际上不是一个使用其中一个的问题,尽管它rsync
用于复制文件和目录在同一台机器上,我认为它不需要作为守护进程运行。
我认为rsync
手册页澄清了这一点。