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