|
Packit |
6c4009 |
#!/bin/bash
|
|
Packit |
6c4009 |
#
|
|
Packit |
6c4009 |
# nscd: Starts the Name Switch Cache Daemon
|
|
Packit |
6c4009 |
#
|
|
Packit |
6c4009 |
# chkconfig: - 30 74
|
|
Packit |
6c4009 |
# description: This is a daemon which handles passwd and group lookups \
|
|
Packit |
6c4009 |
# for running programs and cache the results for the next \
|
|
Packit |
6c4009 |
# query. You should start this daemon if you use \
|
|
Packit |
6c4009 |
# slow naming services like NIS, NIS+, LDAP, or hesiod.
|
|
Packit |
6c4009 |
# processname: /usr/sbin/nscd
|
|
Packit |
6c4009 |
# config: /etc/nscd.conf
|
|
Packit |
6c4009 |
#
|
|
Packit |
6c4009 |
### BEGIN INIT INFO
|
|
Packit |
6c4009 |
# Provides: nscd
|
|
Packit |
6c4009 |
# Required-Start: $syslog
|
|
Packit |
6c4009 |
# Default-Stop: 0 1 6
|
|
Packit |
6c4009 |
# Short-Description: Starts the Name Switch Cache Daemon
|
|
Packit |
6c4009 |
# Description: This is a daemon which handles passwd and group lookups \
|
|
Packit |
6c4009 |
# for running programs and cache the results for the next \
|
|
Packit |
6c4009 |
# query. You should start this daemon if you use \
|
|
Packit |
6c4009 |
# slow naming services like NIS, NIS+, LDAP, or hesiod.
|
|
Packit |
6c4009 |
### END INIT INFO
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# Sanity checks.
|
|
Packit |
6c4009 |
[ -f /etc/nscd.conf ] || exit 0
|
|
Packit |
6c4009 |
[ -x /usr/sbin/nscd ] || exit 0
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# Source function library.
|
|
Packit |
6c4009 |
. /etc/init.d/functions
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# nscd does not run on any kernel lower than 2.2.0 because of threading
|
|
Packit |
6c4009 |
# problems, so we require that in first place.
|
|
Packit |
6c4009 |
case $(uname -r) in
|
|
Packit |
6c4009 |
2.[2-9].*)
|
|
Packit |
6c4009 |
# this is okay
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
[3-9]*)
|
|
Packit |
6c4009 |
# these are of course also okay
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
*)
|
|
Packit |
6c4009 |
#this is not
|
|
Packit |
6c4009 |
exit 1
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
esac
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
RETVAL=0
|
|
Packit |
6c4009 |
prog=nscd
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
start () {
|
|
Packit |
6c4009 |
[ -d /var/run/nscd ] || mkdir /var/run/nscd
|
|
Packit |
6c4009 |
[ -d /var/db/nscd ] || mkdir /var/db/nscd
|
|
Packit |
6c4009 |
echo -n $"Starting $prog: "
|
|
Packit |
6c4009 |
daemon /usr/sbin/nscd
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
echo
|
|
Packit |
6c4009 |
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd
|
|
Packit |
6c4009 |
return $RETVAL
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
stop () {
|
|
Packit |
6c4009 |
echo -n $"Stopping $prog: "
|
|
Packit |
6c4009 |
/usr/sbin/nscd -K
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
if [ $RETVAL -eq 0 ]; then
|
|
Packit |
6c4009 |
rm -f /var/lock/subsys/nscd
|
|
Packit |
6c4009 |
# nscd won't be able to remove these if it is running as
|
|
Packit |
6c4009 |
# a non-privileged user
|
|
Packit |
6c4009 |
rm -f /var/run/nscd/nscd.pid
|
|
Packit |
6c4009 |
rm -f /var/run/nscd/socket
|
|
Packit |
6c4009 |
success $"$prog shutdown"
|
|
Packit |
6c4009 |
else
|
|
Packit |
6c4009 |
failure $"$prog shutdown"
|
|
Packit |
6c4009 |
fi
|
|
Packit |
6c4009 |
echo
|
|
Packit |
6c4009 |
return $RETVAL
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
restart() {
|
|
Packit |
6c4009 |
stop
|
|
Packit |
6c4009 |
start
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# See how we were called.
|
|
Packit |
6c4009 |
case "$1" in
|
|
Packit |
6c4009 |
start)
|
|
Packit |
6c4009 |
start
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
stop)
|
|
Packit |
6c4009 |
stop
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
status)
|
|
Packit |
6c4009 |
status nscd
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
restart)
|
|
Packit |
6c4009 |
restart
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
try-restart | condrestart)
|
|
Packit |
6c4009 |
[ -e /var/lock/subsys/nscd ] && restart
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
force-reload | reload)
|
|
Packit |
6c4009 |
echo -n $"Reloading $prog: "
|
|
Packit |
6c4009 |
killproc /usr/sbin/nscd -HUP
|
|
Packit |
6c4009 |
RETVAL=$?
|
|
Packit |
6c4009 |
echo
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
*)
|
|
Packit |
6c4009 |
echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
|
|
Packit |
6c4009 |
RETVAL=1
|
|
Packit |
6c4009 |
;;
|
|
Packit |
6c4009 |
esac
|
|
Packit |
6c4009 |
exit $RETVAL
|