daemon模式下rsync服务器需要什么

Han*_* N. 33 networking rsync protocols

我不明白在守护进程模式下需要 rsync 服务器。如果我可以将 rsync 与 SSH 或 telnet 一起使用,它有什么好处?

Nik*_*ley 25

很多,但我会在脑海中引用一些。

  1. 如果远程服务器上没有 ssh/rsh 或者它们在配置或更严格的网络规则方面被破坏怎么办?使用 rsh/ssh 仍然需要客户端(取决于发送者或接收者的角色),但是远程端必须在本地 fork rsync 二进制文件并与在本地端运行的 rsync 进程建立连接。rsh/ssh 只会提供一个连接隧道;就 rsync 而言,rsync 正在通过管道与其他 rsync 进程通信。

  2. 拥有守护进程模式 rsync 进程将使服务器成为真正的 ftp 类似服务器,其中一些文件系统可以通过 rsync 模块使用。其他一切都可以避免。假设我只想让 /usr/local 和 /var 可供下载,并拒绝任何 rsync 客户端对其他下载的请求。我可以在主机级别或文件系统(模块)级别使用自由裁量权来允许上传或下载(只读)。

  3. 可以通过配置文件专门控制用于下载/上传的主机/用户级访问、身份验证、授权、日志记录和文件系统(结构)模块。每次对配置文件进行更改时,rsyncd --daemon无需重新启动或HUPped. 还可以控制一次可以连接到 rsync 服务器进程的客户端数量。这很好,因为我不希望我的 rsyncd 服务器进程通过基于 CPU 或磁盘的 I/O 操作完全占用主机。

  4. chroot 功能可以通过守护进程模式下的 rsyncd 配置来提供。如果我想避免客户端连接到我的 rsyncd 以获取必须在主机上保护且不应具有外部访问权限的任何文件/文件系统,我可以将其用作一个非常简洁的安全功能。

  5. 我可以完全拒绝 rsync 客户端使用的一些选项,而不是在服务器端娱乐,例如不允许该--delete选项。

  6. 可以选择在 rsync 过程之前和之后运行一些命令/脚本。一个例子是在传输后模式下报告和存储 rsync 统计信息。

这些是其中的一些,但我相信 rsync 的专家用户可以对此有更多的了解。


Tim*_*Tim 8

  1. 我在尝试使用 cygwin 在 linux 机器和 windows 机器之间同步大文件夹时遇到问题。在放弃 SSH 隧道以支持使用 rsync 守护程序后,我的问题就消失了。

  2. 客户端不需要知道他/她正在推/拉到/从的服务器的文件系统布局等