X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=etc%2Fdebian%2Fnfs-kernel-server;fp=etc%2Fdebian%2Fnfs-kernel-server;h=826e126bcd00e980615bbaffb380ce513179971d;hb=82d42dffa84fb884684f75769ca13668c5188a5e;hp=0000000000000000000000000000000000000000;hpb=da25e1aa006bafb4dd08e2ffedbd42d7c1f4036b;p=nfs-utils.git diff --git a/etc/debian/nfs-kernel-server b/etc/debian/nfs-kernel-server new file mode 100644 index 0000000..826e126 --- /dev/null +++ b/etc/debian/nfs-kernel-server @@ -0,0 +1,84 @@ +#!/bin/sh +# +# nfs-kernel-server +# This shell script takes care of starting and stopping +# the kernel-mode NFS server. +# +# chkconfig: 345 60 20 +# description: NFS is a popular protocol for file sharing across TCP/IP \ +# networks. This service provides NFS server functionality, \ +# which is configured via the /etc/exports file. +# + +PREFIX=/usr +[ -x $PREFIX/sbin/rpc.nfsd ] || exit 0 +[ -x $PREFIX/sbin/rpc.mountd ] || exit 0 +[ -x $PREFIX/sbin/exportfs ] || exit 0 + +# What is this? +DESC="NFS kernel daemon" + +RPCNFSDCOUNT=8 # Number of servers to be started up by default +RPCMOUNTDOPTS= + +# Make sure that daemon cwds are in root fs. +cd / + +# See how we were called. +case "$1" in + start) + if grep -q '^/' /etc/exports; then + printf "Exporting directories for $DESC..." + $PREFIX/sbin/exportfs -r + echo "done." + + printf "Starting $DESC:" + printf " nfsd" + start-stop-daemon --start --quiet \ + --exec $PREFIX/sbin/rpc.nfsd -- $RPCNFSDCOUNT + printf " mountd" + $PREFIX/bin/rpcinfo -u localhost nfs 3 > /dev/null 2>&1 || + RPCMOUNTDOPTS="$RPCMOUNDOPTS --no-nfs-version 3" + start-stop-daemon --start --quiet \ + --exec $PREFIX/sbin/rpc.mountd -- $RPCMOUNTDOPTS + echo "." + + else + echo "Not starting $DESC: No exports." + fi + ;; + + stop) + printf "Stopping $DESC: mountd" + start-stop-daemon --stop --oknodo --quiet \ + --exec $PREFIX/sbin/rpc.mountd + printf " nfsd" + start-stop-daemon --stop --oknodo --quiet \ + --name nfsd --user root --signal 2 + echo "." + + printf "Unexporting directories for $DESC..." + $PREFIX/sbin/exportfs -au + echo "done." + ;; + + reload | force-reload) + printf "Re-exporting directories for $DESC..." + $PREFIX/sbin/exportfs -r + echo "done." + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "Usage: nfs-kernel-server {start|stop|reload|force-reload|restart}" + exit 1 + ;; +esac + +exit 0 +