lkml.org 
[lkml]   [1998]   [Jan]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: nfs client error w/2.1.76
Daniel Quinlan wrote:
>
> kwrohrer@enteract.com writes:
>
> > As I was rebooting my NFS server, I got plenty of:
> >
> > nfs_revalidate_inode: getattr failed, error=-111
> > nfs: RPC call returned error 111
> > RPC: task of released request still queued!
> > RPC: (task is on xprt_pending)
>
> You're probably using RedHat. portmap isn't started until after NFS
> is running, which breaks at some recent point in the 2.1 series.
> portmap should be started right after basic networking. Try this:
>
> # cd /etc/rc.d/rc3.d
> # mv S40portmap S12portmap
> # reboot
>

That won't do. I am using a 4.1 RedHat baseline, and the problem is
not with Kxx and Sxx scripts -- they're OK. The problem is that
you are using init.d/nfs to shut down knfs stuff, and that would
miss a few things.
Since I am running both 2.0.xx and 2.1.xx I have now set up scripts
so that booting 2.1 I'll get knfsd & friends, while booting 2.0
I'll get rpc.nfsd & friends. Here's my /etc/rc.d/init.d/knfs:

=======================================================================
#!/bin/sh
#
# knfs This shell script takes care of starting and stopping
# the *kernel* NFS services. Later we might add NIS too.
#
# Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
# Modified for RHS Linux by Damien Neil
# Modified for kernel NFS by AS
#

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
if [ ! -f /etc/sysconfig/network ]; then
exit 0
fi

. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -f /usr/sbin/knfsd ] || exit 0
[ -f /usr/sbin/kmountd ] || exit 0
[ -f /etc/exports ] || exit 0

# See how we were called.
case "$1" in
start)
# Start daemons.
echo -n "Starting kNFS services: "
kstatd &
kmountd &
knfsd 2 &
echo
touch /var/lock/subsys/nfs
;;
stop)
# Stop daemons.
echo -n "Shutting down kNFS services: "
killproc kmountd
killproc nfsd
killproc kstatd
killproc rpciod
echo
rm -f /var/lock/subsys/nfs
;;
*)
echo "Usage: knfs {start|stop}"
exit 1
esac

exit 0
==============================================================


Of course I added a few lines in my /etc/rc.d/rc.sysinit:


-------------------- excerpt from rc.sysinit --------------------
# Enter root into mtab.
mount -f /

# Set links in /boot to reflect current version
CURR_KERNEL=`uname -r`
echo "Setting links in /boot and /usr/src to rel. $CURR_KERNEL"
ln -snf /boot/vmlinuz-$CURR_KERNEL /boot/vmlinuz
ln -snf /boot/System.map-$CURR_KERNEL /boot/System.map
ln -snf /usr/src/linux-$CURR_KERNEL /usr/src/linux

# Fix nfsd type: kernel or user nfsd ? 2.0.xx will have only the
# 2nd choice, when we can let's run knfsd. Thanks Olaf :)
KERNEL_MINOR=`echo $CURR_KERNEL | cut -d. -f2`
if [ $KERNEL_MINOR -lt 1 ]; then
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc0.d/K20nfs
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc1.d/K20nfs
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc2.d/K20nfs
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc3.d/S60nfs
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc5.d/S60nfs
ln -snf /etc/rc.d/init.d/nfs /etc/rc.d/rc6.d/K20nfs
else
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc0.d/K20nfs
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc1.d/K20nfs
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc2.d/K20nfs
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc3.d/S60nfs
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc5.d/S60nfs
ln -snf /etc/rc.d/init.d/knfs /etc/rc.d/rc6.d/K20nfs
fi

if [ -x /sbin/depmod ]; then
# Get ready for kerneld
echo -n "Finding module dependencies"
-------------------------- end excerpt ---------------------------


--alessandro <asuardi@uninetcom.it> <asuardi@it.oracle.com>

Linux 2.0.33/2.1.78 libc-5.4.38 gcc-2.7.2.3 binutils-2.8.1.0.15

"There's a bit of magic in everything
and then some loss to even things out" -- Lou Reed


\
 
 \ /
  Last update: 2005-03-22 13:41    [W:0.063 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site