3 # nfsfs Mount NFS filesystems.
5 # Version: @(#) /etc/init.d/skeleton 1.01 26-Oct-1993
7 # Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
10 # description: Mounts and unmounts all Network File System (NFS) \
15 # Source networking configuration.
16 if [ ! -f /etc/sysconfig/network ]; then
20 # Source function library.
21 . /etc/rc.d/init.d/functions
24 . /etc/sysconfig/network
26 # Check that networking is up.
27 if is_yes "${NETWORKING}"; then
28 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
29 msg_network_down nfsfs
37 # See how we were called.
40 if [ ! -f /var/lock/subsys/nfsfs ]; then
41 if [ "$NFSDTYPE" != "U" ] && grep -q nfs4 /proc/filesystems; then
42 if [ ! -f /var/lock/subsys/idmapd ]; then
43 msg_starting "NFS idmapd"
44 daemon rpc.cidmapd $RPCIDMAPOPTIONS
46 msg_starting "NFS gssd"
47 daemon rpc.gssd $RPCGSSOPTIONS
49 run_cmd "Mounting NFS filesystems" mount -a -t nfs
50 touch /var/lock/subsys/nfsfs
52 msg_already_running "NFSFS"
56 if [ -f /proc/mounts ]; then
62 show "Unmounting NFS filesystems"
65 remaining=$(awk '$3 == "nfs" {print $2}' $fsfile)
66 while [ -n "$remaining" -a $retry -gt 0 ]; do
67 fuser -msk -TERM `awk '$3 == "nfs" {print $2}' < $fsfile`
69 fuser -msk -KILL `awk '$3 == "nfs" {print $2}' < $fsfile`
71 remaining=$(awk '$3 == "nfs" {print $2}' $fsfile)
75 if [ "$NFSDTYPE" != "U" ] && grep -q nfs4 /proc/filesystems; then
76 msg_stopping "NFS gssd"
78 if [ -f /var/lock/subsys/idmapd -a ! -f /var/lock/subsys/nfs ]; then
79 msg_stopping "NFS idmapd"
83 rm -f /var/lock/subsys/nfsfs
86 if [ -f /proc/mounts ]; then
87 echo "Configured NFS mountpoints:"
88 grep -v '^#' /etc/fstab | \
89 awk '{ if ($3 ~ /^nfs$/ && $4 !~ /noauto/) print $2}'
90 echo "Active NFS mountpoints:"
91 grep -v '^#' /proc/mounts | \
92 awk '{ if ($3 ~ /^nfs$/ && $4 !~ /noauto/) print $2}'
94 echo "/proc filesystem unavailable"
105 msg_usage "$0 {start|stop|restart|reload|force-reload|status}"