X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=rsync.init;h=6f0ba5ef530809c5650e9b7ad1b6cf2276dd5788;hb=30529548bdc253f8c1ffecd1a5f0d9a91c423cac;hp=e2e0a03a97ac34b63714abade24d1a1049cb15df;hpb=a919876639d3ecf1aa184a207fa80518f853798d;p=packages%2Frsync.git diff --git a/rsync.init b/rsync.init index e2e0a03..6f0ba5e 100644 --- a/rsync.init +++ b/rsync.init @@ -2,7 +2,7 @@ # # rsyncd This shell script takes care of starting and stopping rsyncd # -# chkconfig: 345 90 25 +# chkconfig: 345 90 25 # description: rsync daemon # processname: rsync # @@ -15,27 +15,31 @@ . /etc/sysconfig/network # Check that networking is up. -if is_no "${NETWORKING}"; then - msg_network_down rsyncd - exit 1 +if is_yes "${NETWORKING}"; then + if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then + msg_network_down rsyncd + exit 1 + fi +else + exit 0 fi -. /etc/sysconfig/rsyncd +# Get service configuration +[ -f /etc/sysconfig/rsyncd ] && . /etc/sysconfig/rsyncd -# See how we were called. -case "$1" in - start) - # Start daemons. +start() { + # Start daemons. if [ ! -f /var/lock/subsys/rsyncd ]; then msg_starting rsyncd - daemon rsync --daemon + daemon /usr/bin/rsync --daemon --dparam=pidfile=/var/run/rsync.pid ${RSYNC_OPTIONS} RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/rsyncd else msg_already_running rsyncd fi - ;; - stop) +} + +stop() { # Stop daemons. if [ -f /var/lock/subsys/rsyncd ]; then msg_stopping rsyncd @@ -43,17 +47,45 @@ case "$1" in rm -f /var/lock/subsys/rsyncd >/dev/null 2>&1 else msg_not_running rsyncd - exit 1 fi +} + +condrestart() { + if [ -f /var/lock/subsys/rsyncd ]; then + stop + start + else + msg_not_running rsyncd + RETVAL=$1 + fi +} + +RETVAL=0 +# See how we were called. +case "$1" in + start) + start + ;; + stop) + stop ;; restart) - $0 stop - $0 start + stop + start + ;; + try-restart) + condrestart 0 + ;; + force-reload) + condrestart 7 ;; status) - status rsync + status rsyncd rsync + exit $? ;; *) - msg_usage "$0 {start|stop|restart|status}" - exit 1 + msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}" + exit 3 esac + +exit $RETVAL