2016-12-08 55 views
0

私はrsyncデーモンを実行しています(SaneSecurityシグネチャのミラーを提供しています)。rsyncデーモンがうまく動作しない

rsyncが、この(値Runitから)のように開始されます。

/usr/bin/rsync -v --daemon --no-detach 

そして、configが含まれています

use chroot = no 
    munge symlinks = no 
    max connections = 200 
    timeout = 30 
    syslog facility = local5 
    transfer logging = no 
    log file = /var/log/rsync.log 
    reverse lookup = no 
    [sanesecurity] 
     comment = SaneSecurity ClamAV Mirror 
     path = /srv/mirror/sanesecurity 
     read only = yes 
     list = no 
     uid = nobody 
     gid = nogroup 

をしかし、私が見ていることはrsyncのプロセスを "余韻" がたくさんある:

# ps auxwww|grep rsync 
    root  423 0.0 0.0 4244 1140 ?  Ss Oct30 0:00 runsv rsync 
    root  2529 0.0 0.0 11156 2196 ?  S 15:00 0:00 /usr/bin/rsync -v --daemon --no-detach 
    nobody 4788 0.0 0.0 20536 2860 ?  S 15:10 0:00 /usr/bin/rsync -v --daemon --no-detach 
    nobody 5094 0.0 0.0 19604 2448 ?  S 15:13 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  5304 0.0 0.0 11156 180 ?  S 15:15 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  5435 0.0 0.0 11156 180 ?  S 15:16 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  5797 0.0 0.0 11156 180 ?  S 15:19 0:00 /usr/bin/rsync -v --daemon --no-detach 
    nobody 5913 0.0 0.0 20536 2860 ?  S 15:20 0:00 /usr/bin/rsync -v --daemon --no-detach 
    nobody 6032 0.0 0.0 20536 2860 ?  S 15:21 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  6207 0.0 0.0 11156 180 ?  S 15:22 0:00 /usr/bin/rsync -v --daemon --no-detach 
    nobody 6292 0.0 0.0 20544 2744 ?  S 15:23 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  6467 0.0 0.0 11156 180 ?  S 15:25 0:00 /usr/bin/rsync -v --daemon --no-detach 
    root  6905 0.0 0.0 11156 180 ?  S 15:29 0:00 /usr/bin/rsync -v --daemon --no-detach 

(現在午前15時30です)

15:10や15:13などからプロセスが掛かっています(特権を落とさなくても!)。

そして、彼らは何をしていますか?

のは確認してみましょう:

# strace -p 5304 
    strace: Process 5304 attached 
    select(4, [3], NULL, [3], {25, 19185}^C 
    strace: Process 5304 detached 
    <detached ...> 

    # strace -p 5797 
    strace: Process 5797 attached 
    select(4, [3], NULL, [3], {48, 634487}^C 
    strace: Process 5797 detached 
    <detached ...> 

これはUbuntuのXenialからのrsyncだけでなく、PPAからインストールの両方でhappended(現在のrsync 3.1.2-1を使用して〜ubuntu16.04.1york0)

答えて

1

つのプロセスがあります接続ごとに作成されます。クライアントがモジュールを選択する前に、プロセスは権限を削除する必要があるかどうかを知りません。

このようなプロセスを簡単に作成できます。

nc $host 873 

タイムアウトはディスクI/Oタイムアウトであるため、接続が30秒後に終了しないことがわかります。 rsyncクライアントには--contimeoutオプションがありますが、サーバー側のオプションがないようです。

1

最後に、スタンドアロンで実行する代わりに、(x)inetdからrsyncを呼び出すことにしました。追加のねじれとして

service rsync 
    { 
     disable = no 
     socket_type = stream 
     wait = no 
     user = root 
     server = /usr/bin/timeout 
     server_args = -k 60s 60s /usr/bin/rsync --daemon 
     log_on_failure += USERID 
     flags = IPv6 
    } 

、私は長時間実行プロセスに対する別の保護手段を追加、タイムアウトのrsync呼び出しを包みました。

関連する問題