diff options
author | Aron Griffis <agriffis@gentoo.org> | 2001-10-22 00:08:27 +0000 |
---|---|---|
committer | Aron Griffis <agriffis@gentoo.org> | 2001-10-22 00:08:27 +0000 |
commit | 5e63c486ab7a98d8ffe7f228711394ed78c0236c (patch) | |
tree | a0f80a0ea2bbfe1c646411c72852a1eec0f2a652 /net-fs | |
parent | MGT update (diff) | |
download | historical-5e63c486ab7a98d8ffe7f228711394ed78c0236c.tar.gz historical-5e63c486ab7a98d8ffe7f228711394ed78c0236c.tar.bz2 historical-5e63c486ab7a98d8ffe7f228711394ed78c0236c.zip |
Modified nfs-utils to use /etc/conf.d. Also removed creation of
symlinks from src_install(). This should not be done since running
an NFS server is considered a security risk. Instead just let the
administrator use rc-update to add it to runlevels.
Diffstat (limited to 'net-fs')
-rw-r--r-- | net-fs/nfs-utils/files/digest-nfs-utils-0.3.1-r7 | 1 | ||||
-rw-r--r-- | net-fs/nfs-utils/files/exports-0.3.1-r7 | 1 | ||||
-rw-r--r-- | net-fs/nfs-utils/files/nfs-0.3.1-r7 | 119 | ||||
-rw-r--r-- | net-fs/nfs-utils/files/nfs-utils-0.3.1-r7-gentoo.diff | 11 | ||||
-rw-r--r-- | net-fs/nfs-utils/files/nfs.confd-0.3.1-r7 | 13 | ||||
-rw-r--r-- | net-fs/nfs-utils/files/nfsmount-0.3.1-r7 | 43 | ||||
-rw-r--r-- | net-fs/nfs-utils/nfs-utils-0.3.1-r7.ebuild | 56 |
7 files changed, 244 insertions, 0 deletions
diff --git a/net-fs/nfs-utils/files/digest-nfs-utils-0.3.1-r7 b/net-fs/nfs-utils/files/digest-nfs-utils-0.3.1-r7 new file mode 100644 index 000000000000..dd7f9cadf888 --- /dev/null +++ b/net-fs/nfs-utils/files/digest-nfs-utils-0.3.1-r7 @@ -0,0 +1 @@ +MD5 7acac2d055067d48bf5bc4b4d0fc630f nfs-utils-0.3.1.tar.gz 217088 diff --git a/net-fs/nfs-utils/files/exports-0.3.1-r7 b/net-fs/nfs-utils/files/exports-0.3.1-r7 new file mode 100644 index 000000000000..5102ef27c150 --- /dev/null +++ b/net-fs/nfs-utils/files/exports-0.3.1-r7 @@ -0,0 +1 @@ +# /etc/exports: NFS file systems being exported. See exports(5). diff --git a/net-fs/nfs-utils/files/nfs-0.3.1-r7 b/net-fs/nfs-utils/files/nfs-0.3.1-r7 new file mode 100644 index 000000000000..72a2fc522c7c --- /dev/null +++ b/net-fs/nfs-utils/files/nfs-0.3.1-r7 @@ -0,0 +1,119 @@ +#!/sbin/runscript + +#--------------------------------------------------------------------------- +# This script starts/stops the following +# rpc.statd if necessary (also checked by init.d/nfsmount) +# rpd.rquotad +# rpd.nfsd +# rpc.mountd +#--------------------------------------------------------------------------- + +opts="start stop restart reload" + +# This variable is used for controlling whether or not to run exportfs -ua; +# see stop() for more information +RESTARTING=no + +depend() { + need net portmap +} + +start_statd() { + # Don't start rpc.statd if already started by init.d/nfsmount + killall -0 rpc.statd &>/dev/null && return 0 + ebegin "Starting NFS statd" + start-stop-daemon --start --quiet --exec /sbin/rpc.statd 1>&2 + eend $? "Error starting NFS statd" +} + +stop_statd() { + # Don't stop rpc.statd if it's in use by init.d/nfsmount. + mount -t nfs | grep -q . && return 0 + # Make sure it's actually running + killall -0 rpc.statd &>/dev/null || return 0 + # Okay, all tests passed, stop rpc.statd + ebegin "Stopping NFS statd" + start-stop-daemon --stop --quiet --exec /sbin/rpc.statd 1>&2 + eend $? "Error stopping NFS statd" +} + +start() { + if [ "$NFSSERVER" = "yes" ] + then + start_statd + + if grep -q '^/' /etc/exports &>/dev/null; then + ebegin "Exporting NFS directories" + /sbin/exportfs -r 1>&2 + eend $? "Error exporting NFS directories" + fi + + ebegin "Starting NFS rquotad" + start-stop-daemon --start --quiet --exec /sbin/rpc.rquotad 1>&2 + eend $? "Error starting NFS rquotad" + + ebegin "Starting NFS daemon" + start-stop-daemon --start --quiet --exec \ + /sbin/rpc.nfsd -- $RPCNFSDCOUNT 1>&2 + eend $? "Error starting NFS daemon" + + # Check if we support NFSv3 + ebegin "Starting NFS mountd" + rpcinfo -u localhost nfs 3 &>/dev/null || \ + RPCMOUNTDOPTS="$RPCMOUNTDOPTS --no-nfs-version 3" + start-stop-daemon --start --quiet --exec \ + /sbin/rpc.mountd -- $RPCMOUNTDOPTS 1>&2 + eend $? "Error starting NFS mountd" + fi +} + +stop() { + # Don't check NFSSERVER variable since it might have changed, + # instead use --oknodo to smooth things over + ebegin "Stopping NFS mountd" + start-stop-daemon --stop --quiet --oknodo \ + --exec /sbin/rpc.mountd 1>&2 + eend $? "Error stopping NFS mountd" + + ebegin "Stopping NFS daemon" + start-stop-daemon --stop --quiet --oknodo \ + --name nfsd --user root --signal 2 1>&2 + eend $? "Error stopping NFS daemon" + + ebegin "Stopping NFS rquotad" + start-stop-daemon --stop --quiet --oknodo \ + --exec /sbin/rpc.rquotad 1>&2 + eend $? "Error stopping NFS rquotad" + + # When restarting the NFS server, running "exportfs -ua" probably + # isn't what the user wants. Running it causes all entries listed + # in xtab to be removed from the kernel export tables, and the + # xtab file is cleared. This effectively shuts down all NFS + # activity, leaving all clients holding stale NFS filehandles, + # *even* when the NFS server has restarted. + # + # That's what you would want if you were shutting down the NFS + # server for good, or for a long period of time, but not when the + # NFS server will be running again in short order. In this case, + # then "exportfs -r" will reread the xtab, and all the current + # clients will be able to resume NFS activity, *without* needing + # to umount/(re)mount the filesystem. + if [ "$RESTARTING" = no ]; then + ebegin "Unexporting NFS directories" + /sbin/exportfs -ua 1>&2 + eend $? "Error unexporting NFS directories" + fi + + stop_statd +} + +reload() { + /sbin/exportfs -r +} + +restart() { + # See long comment in stop() regarding RESTARTING and exportfs -ua + RESTARTING=yes + stop + start +} diff --git a/net-fs/nfs-utils/files/nfs-utils-0.3.1-r7-gentoo.diff b/net-fs/nfs-utils/files/nfs-utils-0.3.1-r7-gentoo.diff new file mode 100644 index 000000000000..2265f309bb14 --- /dev/null +++ b/net-fs/nfs-utils/files/nfs-utils-0.3.1-r7-gentoo.diff @@ -0,0 +1,11 @@ +--- nfs-utils-0.2.1/support/nfs/rpcmisc.c~ Sun Apr 30 06:14:56 2000 ++++ nfs-utils-0.2.1/support/nfs/rpcmisc.c Mon Apr 23 17:20:51 2001 +@@ -13,7 +13,7 @@ + */ + + #include "config.h" +- ++#include <time.h> + #include <sys/types.h> + #include <sys/ioctl.h> + #include <sys/stat.h> diff --git a/net-fs/nfs-utils/files/nfs.confd-0.3.1-r7 b/net-fs/nfs-utils/files/nfs.confd-0.3.1-r7 new file mode 100644 index 000000000000..a3b27aa2a7a1 --- /dev/null +++ b/net-fs/nfs-utils/files/nfs.confd-0.3.1-r7 @@ -0,0 +1,13 @@ +# This is a safety net to keep from running an NFS server unless the +# administrator really wants it. It's mostly historical because early +# versions of Gentoo didn't split nfs/nfsmount into two scripts. +# These days it might be safe to remove this eventually, since +# administrators specifically have to run "rc-update add nfs default" +# in order for the NFS server to run. +NFSSERVER=no + +# Number of servers to be started up by default +RPCNFSDCOUNT=8 + +# Options to pass to rpc.mountd +RPCMOUNTDOPTS="" diff --git a/net-fs/nfs-utils/files/nfsmount-0.3.1-r7 b/net-fs/nfs-utils/files/nfsmount-0.3.1-r7 new file mode 100644 index 000000000000..10debbb5eb92 --- /dev/null +++ b/net-fs/nfs-utils/files/nfsmount-0.3.1-r7 @@ -0,0 +1,43 @@ +#!/sbin/runscript + +depend() { + need net portmap +} + +start_statd() { + # Don't start rpc.statd if already started by init.d/nfs + killall -0 rpc.statd &>/dev/null && return 0 + ebegin "Starting NFS statd" + start-stop-daemon --start --quiet --exec /sbin/rpc.statd 1>&2 + eend $? "Error starting NFS statd" +} + +stop_statd() { + # Don't stop rpc.statd if it's in use by init.d/nfs + killall -0 nfsd &>/dev/null && return 0 + # Make sure it's actually running + killall -0 rpc.statd &>/dev/null || return 0 + # Okay, all tests passed, stop rpc.statd + ebegin "Stopping NFS statd" + start-stop-daemon --stop --quiet --exec /sbin/rpc.statd 1>&2 + eend $? "Error stopping NFS statd" +} + +start() { + start_statd + ebegin "Mounting NFS filesystems" + mount -a -t nfs + eend $? "Error mounting NFS filesystems" +} + +stop() { + ebegin "Unmounting NFS filesystems" + umount -a -t nfs + eend $? "Error unmounting NFS filesystems" + stop_statd +} + +restart() { + stop + start +} diff --git a/net-fs/nfs-utils/nfs-utils-0.3.1-r7.ebuild b/net-fs/nfs-utils/nfs-utils-0.3.1-r7.ebuild new file mode 100644 index 000000000000..151a09d0fced --- /dev/null +++ b/net-fs/nfs-utils/nfs-utils-0.3.1-r7.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2000 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License, v2 or later +# Originally written by Achim Gottinger <achim@gentoo.org> +# Heavily updated for nfs-utils-0.3.1 by Aron Griffis <agriffis@gentoo.org> +# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/nfs-utils-0.3.1-r7.ebuild,v 1.1 2001/10/22 00:08:27 agriffis Exp $ + +A=$P.tar.gz +S=$WORKDIR/$P +DESCRIPTION="kernel NFS daemons" +SRC_URI="http://download.sourceforge.net/nfs/$A" +HOMEPAGE="http://nfs.sourceforge.net/" + +DEPEND="virtual/glibc + tcpd? ( sys-apps/tcp-wrappers )" + +RDEPEND="virtual/glibc + >=net-nds/portmap-5b-r6" + +src_unpack() { + unpack $A + cd $S + patch -p1 < $FILESDIR/$PF-gentoo.diff +} + +src_compile() { + ./configure \ + --prefix=/ \ + --mandir=/usr/share/man \ + --with-statedir=/var/lib/nfs \ + --enable-nfsv3 || die + if ! use tcpd; then + cp config.mk config.mk.orig + sed -e "s:-lwrap::" -e "s:-DHAVE_TCP_WRAPPER::" \ + config.mk.orig > config.mk + fi + make || die +} + +src_install() { + # MANDIR doesn't pick up install_prefix + make install install_prefix=$D MANDIR=$D/usr/share/man + insinto /etc + newins $FILESDIR/exports-${PVR} exports + dodoc ChangeLog COPYING README + docinto linux-nfs + dodoc linux-nfs/* + dodir /etc/init.d + exeinto /etc/init.d + newexe ${FILESDIR}/nfs-${PVR} nfs + newexe ${FILESDIR}/nfsmount-${PVR} nfsmount + insinto /etc/conf.d + newins ${FILESDIR}/nfs.confd-${PVR} nfs + # Don't create runlevels symlinks here. NFS is not something that + # should be enabled by default. Administrators can use rc-update + # to do it themselves. +} |