无需套接字即可与 rsync 守护进程通信

无需套接字即可与 rsync 守护进程通信

根据联机帮助页,rsync --daemon将:

  • 尝试使用 rsync 协议使用 stdin/out 进行通信,如果检测到 stdin/out 是套接字,
  • 打开一个 TCP 套接字进行监听并使用它来公开 rsync 协议端点,否则。

是否可以rsync在不将套接字连接到其标准输入/输出的情况下强制执行第一种行为?

答案1

因此,显然我需要将 undocumented-on-purpose--server选项作为第一个参数传递给rsync

liori:~% rsync --server --daemon --config <(printf "") .
@RSYNCD: 31.0
hi
@ERROR: protocol startup error
liori:~%

hi中间是我试图正确地问候守护进程。显然守护进程不喜欢它......)

笔记:

  • 我太懒了,无法创建一个合适的rsyncd.conf文件,所以我正在创建一个带有--config <(printf "").否则rsync将记录rsync: unable to open config file "rsyncd.conf": No such file or directory到系统日志。

  • 命令行末尾的点似乎很重要(否则 rsync 会打印rsync error: syntax or usage error到系统日志),但我不知道它的用途。

相关内容