--- nscd/nscd.init
+++ nscd/nscd.init
@@ -48,9 +48,8 @@
 
 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
+    /usr/sbin/nscd
     RETVAL=$?
     echo
     [ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd
@@ -67,12 +66,10 @@
 	# 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
+    echo "Done."
+    # If nscd did not run, return 0 according to LSB.
+    return 0
 }
 
 restart() {
@@ -104,7 +101,8 @@
 	;;
     force-reload | reload)
     	echo -n $"Reloading $prog: "
-	killproc /usr/sbin/nscd -HUP
+	# Use killall, initscripts-1.0-r115 don't support -HUP yet.
+	killall -HUP /usr/sbin/nscd
 	RETVAL=$?
 	echo
 	;;
