#!/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 # config: /etc/sysconfig/nscd # ### 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 # Source an auxiliary options file if we have one, and pick up NSCD_OPTIONS. [ -r /etc/sysconfig/nscd ] && . /etc/sysconfig/nscd 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 $NSCD_OPTIONS 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) [ -e /var/lock/subsys/nscd ] || start RETVAL=$? ;; stop) [ ! -e /var/lock/subsys/nscd ] || 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: " RETVAL=0 /usr/sbin/nscd -i passwd || RETVAL=$? /usr/sbin/nscd -i group || RETVAL=$? /usr/sbin/nscd -i hosts || RETVAL=$? /usr/sbin/nscd -i services || RETVAL=$? echo ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}" RETVAL=1 ;; esac exit $RETVAL