diff options
Diffstat (limited to 'user/nfs-utils/nfsmount.initd')
-rw-r--r-- | user/nfs-utils/nfsmount.initd | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/user/nfs-utils/nfsmount.initd b/user/nfs-utils/nfsmount.initd new file mode 100644 index 000000000..12c7d786a --- /dev/null +++ b/user/nfs-utils/nfsmount.initd @@ -0,0 +1,47 @@ +#!/sbin/openrc-run +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +[ -e /etc/conf.d/nfs ] && . /etc/conf.d/nfs + +depend() { + local myneed="" + if [ -e /etc/fstab ] ; then + myneed="${myneed} $( + awk '!/^[[:space:]]*#/ && ($3 == "nfs" || $3 == "nfs4") { + if ($3 == "nfs4") + idmapd = "rpc.idmapd" + if ($4 ~ /sec=(krb|spkm)/) + gssd = "rpc.gssd" + } + END { print idmapd " " gssd } + ' /etc/fstab + )" + fi + config /etc/fstab + need portmap rpc.statd ${myneed} + use ypbind dns rpc.idmapd rpc.gssd +} + +start() { + if [ -x /usr/sbin/sm-notify ] ; then + ebegin "Starting NFS sm-notify" + /usr/sbin/sm-notify ${OPTS_SMNOTIFY} + eend $? + fi + + # Make sure nfs support is loaded in the kernel #64709 + if [ -e /proc/modules ] && ! grep -qs 'nfs$' /proc/filesystems ; then + modprobe -q nfs + fi + + ebegin "Mounting NFS filesystems" + mount -a -t nfs,nfs4 + eend $? +} + +stop() { + ebegin "Unmounting NFS filesystems" + umount -a -t nfs,nfs4 + eend $? +} |