ypbind/ypbind.init

99 lines
2.0 KiB
Plaintext
Raw Normal View History

#!/bin/sh
#
# ypbind: Starts the ypbind Daemon
#
# Version: @(#) /etc/init.d/ypbind.init 1.1
#
# chkconfig: - 17 83
# description: This is a daemon which runs on NIS/YP clients and binds them \
# to a NIS domain. It must be running for systems based on glibc \
# to work as NIS clients, but it should not be enabled on systems \
# which are not using NIS.
# processname: ypbind
# config: /etc/yp.conf
OTHER_YPBIND_OPTS=""
# Source function library.
. /etc/init.d/functions
. /etc/sysconfig/network
start() {
DOMAINNAME=`domainname`
if [ "$DOMAINNAME" = "(none)" -o "$DOMAINNAME" = "" ]; then
if [ -n "$NISDOMAIN" ]; then
action "Setting NIS domain name $NISDOMAIN: " domainname $NISDOMAIN
else
exit 1
fi
fi
echo -n "Binding to the NIS domain... "
daemon ypbind $OTHER_YPBIND_OPTS
echo
# the following fixes problems with the init scripts continuing
# even when we are really not bound yet to a server, and then things
# that need NIS fail.
pid=`pidofproc ypbind`
if [ -n "$pid" ]; then
echo -n "Listening for an NIS domain server: "
times=0
until ypwhich > /dev/null 2>&1 || [ "$times" = "10" ]
do
echo -n "." ;
sleep 1
times=$[$times+1]
done
ypwhich
fi
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ypbind
return $RETVAL
}
stop() {
echo -n "Shutting down NIS services: "
killproc ypbind
RETVAL=$?
if [ $RETVAL -eq 0 ] ; then
rm -f /var/lock/subsys/ypbind
# if we used brute force (like kill -9) we don't want those around
if [ x$(domainname) != x ] ; then
rm -f /var/yp/binding/$(domainname)*
fi
fi
echo
return $RETVAL
}
restart() {
stop
start
}
RETVAL=0
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status ypbind
;;
restart|reload)
restart
;;
condrestart)
[ -f /var/lock/subsys/ypbind ] && restart || :
;;
*)
echo "*** Usage: ypbind {start|stop|status|restart|condrestart}"
exit 1
esac
exit $?