- cd / # daemons should have root dir as cwd
- printf "Starting $DESC:"
- printf " statd"
- start-stop-daemon --start --quiet \
- --exec $PREFIX/sbin/rpc.statd -- $STATDPORT
- if [ "$NEED_LOCKD" = yes ]
+ log_daemon_msg "Starting $DESC"
+
+ if [ "$NEED_STATD" = yes ]; then
+ log_progress_msg "statd"
+
+ # See if rpcbind is running
+ if [ -x /usr/sbin/rpcinfo ]; then
+ /usr/sbin/rpcinfo -p >/dev/null 2>&1
+ RET=$?
+ if [ $RET != 0 ]; then
+ echo
+ log_warning_msg "Not starting: portmapper is not running"
+ exit 0
+ fi
+ fi
+ start-stop-daemon --start --oknodo --quiet \
+ --pidfile /run/rpc.statd.pid \
+ --exec /sbin/rpc.statd -- $STATDOPTS
+ RET=$?
+ if [ $RET != 0 ]; then
+ log_end_msg $RET
+ exit $RET
+ else
+ if [ -d /run/sendsigs.omit.d ]; then
+ rm -f /run/sendsigs.omit.d/statd
+ ln -s /run/rpc.statd.pid /run/sendsigs.omit.d/statd
+ fi
+ fi
+ fi
+
+ # Don't start idmapd and gssd if we don't have them (say, if /usr is not
+ # up yet).
+ [ -x /usr/sbin/rpc.idmapd ] || NEED_IDMAPD=no
+ [ -x /usr/sbin/rpc.gssd ] || NEED_GSSD=no
+
+ if [ "$NEED_IDMAPD" = yes ] || [ "$NEED_GSSD" = yes ]