]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - debian/nfs-kernel-server.init
Replace lsof usage with redirection to /dev/tcp
[nfs-utils.git] / debian / nfs-kernel-server.init
index 2f675be128045bfca5294f06fb95fc75c0b82716..298e3b45ef4184bbe557a93c83a72773d75e5d03 100644 (file)
@@ -4,6 +4,7 @@
 # Provides:          nfs-kernel-server
 # Required-Start:    $remote_fs nfs-common $portmap $time
 # Required-Stop:     $remote_fs nfs-common $portmap $time
+# Should-Start:      $named
 # Default-Start:     2 3 4 5
 # Default-Stop:      0 1 6
 # Short-Description: Kernel NFS server support
@@ -64,7 +65,7 @@ case "$1" in
                do_modprobe nfsd
 
                # See if our running kernel supports the NFS kernel server
-               if [ -f /proc/kallsyms ] && ! grep -qE 'init_nf(sd|     )' /proc/kallsyms; then
+               if ! grep -E -qs "[[:space:]]nfsd\$" /proc/filesystems; then
                        log_warning_msg "Not starting $DESC: no support in current kernel."
                        exit 0
                fi
@@ -81,6 +82,16 @@ case "$1" in
 
                log_daemon_msg "Starting $DESC"
                log_progress_msg "nfsd"
+               
+               # See if portmap or rpcbind are running
+               cat </dev/null >/dev/tcp/localhost/111
+               RET=$?
+               if [ $RET != 0 ]; then
+                   echo
+                   log_warning_msg "Not starting: portmap daemon is not running"
+                   exit 0
+               fi
+
                start-stop-daemon --start --oknodo --quiet \
                    --nicelevel $RPCNFSDPRIORITY \
                    --exec $PREFIX/sbin/rpc.nfsd -- $RPCNFSDCOUNT