diff --git a/rsync.changes b/rsync.changes index 096ac41..2c99b49 100644 --- a/rsync.changes +++ b/rsync.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Sep 14 15:03:17 CEST 2007 - ro@suse.de + +- fix (#300526) restart will start standalone rsync if running + under xinetd + - use a pid file for rsyncd in init script so that rcrsyncd + will not show status running for an rsync started by xinetd + - insert "pid file" entry into rsyncd.conf if not present + ------------------------------------------------------------------- Wed Sep 12 15:51:20 CEST 2007 - dmueller@suse.de diff --git a/rsync.spec b/rsync.spec index 94d9c35..979915f 100644 --- a/rsync.spec +++ b/rsync.spec @@ -20,10 +20,10 @@ BuildRequires: te_ams te_latex BuildRequires: popt-devel zlib-devel License: GPL v2 or later Group: Productivity/Networking/Other -PreReq: %fillup_prereq %insserv_prereq -Autoreqprov: on +PreReq: %fillup_prereq %insserv_prereq sed grep +AutoReqProv: on Version: 2.6.9 -Release: 47 +Release: 49 Summary: Replacement for RCP/mirror that has Many More Features Source: samba.org/ftp/rsync/rsync-%{version}.tar.bz2 Source1: logrotate.rsync @@ -37,7 +37,7 @@ Patch3: system-zlib.diff Patch4: rsync-overlong.patch Patch5: lutimes-hack.diff Patch6: rsync-fix_fuzzy.patch -URL: http://rsync.samba.org/ +Url: http://rsync.samba.org/ BuildRoot: %{_tmppath}/%{name}-%{version}-build %define with_system_zlib 0 @@ -119,6 +119,9 @@ ln -sf ../../etc/init.d/rsyncd $RPM_BUILD_ROOT/usr/sbin/rcrsyncd %post %fillup_and_insserv rsyncd +if ! grep -q "^pid file" /etc/rsyncd.conf ; then + sed -i -e "/^log file/{;p;s@\(.*\)@pid file = /var/run/rsyncd.pid@;}" /etc/rsyncd.conf +fi %postun %restart_on_update rsyncd @@ -140,6 +143,12 @@ ln -sf ../../etc/init.d/rsyncd $RPM_BUILD_ROOT/usr/sbin/rcrsyncd %doc COPYING NEWS README tech_report.ps tech_report.tex %changelog +* Fri Sep 14 2007 - ro@suse.de +- fix (#300526) restart will start standalone rsync if running + under xinetd + - use a pid file for rsyncd in init script so that rcrsyncd + will not show status running for an rsync started by xinetd + - insert "pid file" entry into rsyncd.conf if not present * Wed Sep 12 2007 - dmueller@suse.de - build parallel - fix hardlinks accross partition diff --git a/rsyncd.conf b/rsyncd.conf index f15489f..edb2ec2 100644 --- a/rsyncd.conf +++ b/rsyncd.conf @@ -4,6 +4,7 @@ use chroot = true transfer logging = true log format = %h %o %f %l %b log file = /var/log/rsyncd.log +pid file = /var/run/rsyncd.pid hosts allow = trusted.hosts slp refresh = 300 diff --git a/rsyncd.rc b/rsyncd.rc index f41c2a1..3cfe612 100644 --- a/rsyncd.rc +++ b/rsyncd.rc @@ -25,6 +25,7 @@ RSYNCD_BIN=/usr/sbin/rsyncd test -x $RSYNCD_BIN || exit 5 +RSYNCD_PID=/var/run/rsyncd.pid # Shell functions sourced from /etc/rc.status: # rc_check check and set local and overall rc status @@ -63,7 +64,7 @@ case "$1" in # NOTE: startproc return 0, even if service is # already running to match LSB spec. - startproc -t 1 $RSYNCD_BIN --daemon + startproc -p $RSYNCD_PID -t 1 $RSYNCD_BIN --daemon # Remember status and be verbose rc_status -v @@ -73,7 +74,7 @@ case "$1" in ## Stop daemon with killproc(8) and if this fails ## set echo the echo return value. - killproc -TERM $RSYNCD_BIN + killproc -p $RSYNCD_PID -TERM $RSYNCD_BIN # Remember status and be verbose rc_status -v @@ -102,7 +103,7 @@ case "$1" in ## If it does not support it, restart. echo -n "Reload service rsync" - killproc -HUP $RSYNCD_BIN + killproc -p $RSYNCD_PID -HUP $RSYNCD_BIN rc_status -v ;; reload) @@ -111,7 +112,7 @@ case "$1" in # If it supports signalling: echo -n "Reload service rsync" - killproc -HUP $RSYNCD_BIN + killproc -p $RSYNCD_PID -HUP $RSYNCD_BIN rc_status -v ;; status) @@ -126,7 +127,7 @@ case "$1" in # 3 - service not running # NOTE: checkproc returns LSB compliant status values. - checkproc $RSYNCD_BIN + checkproc -p $RSYNCD_PID $RSYNCD_BIN rc_status -v ;; *)