ソケットなしのrsyncデーモンとの通信

ソケットなしのrsyncデーモンとの通信

マンページによるとrsync --daemon

  • stdin/out がソケットとして検出されると、rsync プロトコルを使用して stdin/out を使用して通信を試みます。
  • リッスンするTCPソケットを開き、それを使用してrsyncプロトコルエンドポイントを公開します。

rsyncソケットを標準入力/出力に接続せずに最初の動作を強制できますか?

答え1

--serverしたがって、明らかに文書化されていない目的オプションを最初の引数として渡す必要がありますrsync

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

hi真ん中はデーモンにちゃんと挨拶しようとする姿。デーモンがあまり好きじゃないように…)

メモ:

  • rsyncd.conf適切なファイルを作成するにはあまりにも怠惰--config <(printf "")rsyncrsync: unable to open config file "rsyncd.conf": No such file or directory

  • コマンドラインの最後にあることが重要に見えますが(そうでなければrsyncがrsync error: syntax or usage errorsyslogに印刷されます)、それが何のためであるかわかりません。

関連情報