異なるポートでrsyncを介してファイルを受信する複数のサーバーがあります。それらを同じ物理サーバーにマージし、クライアントがファイルを現在と同じポート(つまり、異なる代替ポート)に転送し続けるようにしたいのですが。
通常は、それぞれに対して/usr/bin/rsync --daemon --port=x
を実行しますが、現在は「デフォルト」のrsyncサーバーであるため、centos6のxinetdを介して動作させようとしています。 /etc/services
にポートを追加しても、それは行われませんでした(inetdの下にあるはずですが、xinetdではない可能性がありますか?)。デーモンを手動で実行し、xinetdに実行させると(それを実行するためだけにブロックされることはありません)、それでも両方をxinetdで実行する必要があります。私の質問はそれさえできるのかということです。
副次的なこととして、man rsyncでは:
--port=PORT
This specifies an alternate TCP port number for the daemon to listen on rather than the default of 873. See also the lqportrq global option in the rsyncd.conf manpage.
lqportrqはmanrsync.dやGoogle検索のどこにも表示されません。何が得られますか?
使用する追加のポートごとに、追加のxinetd構成を追加する必要があります。各ポートには、/etc/services
で一意のサービス名が必要です。たとえば、次のようになります。
echo "rsync00 900/tcp" >> /etc/services
そして、/etc/xinet.d/rsync00
で:
service rsync00
{
flags = IPv6
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon --config /etc/rsync00.conf
log_on_failure += USERID
}