SUMMARY: Mounting Linux-root via NFS from Tru64 server

From: Gernot Salzer <salzer_at_logic.at>
Date: Fri, 01 Sep 2000 18:30:38 +0200

Problem
=======
When mounting the Root-FS of a Linux PC from an NFS server
running Tru64 4.0D, I get the error
   call_verify: server requires stronger authentication
(my original mail is at the bottom).


Solution
========
I received two replies from this list; many thanks to
   Iwao MAKINO <makino_at_hpc.co.jp>
   Keith Parkins <kparkins_at_cs.rochester.edu>
Both suggested that my problem might be the result of a version mismatch
between NFSv3 on the Tru64 server and NFSv2 on the Linux client.
They gave me some pointers for Linux patches that would upgrade
the NFS version:
   http://www.fys.uio.no/~trondmy/src/
   http://oss.sgi.com/projects/nfs3/
   http://nfs.sourceforge.net/

The final solution (so it seems) came from John.Jemiolo_at_compaq.com,
who according to the archives of a Linux kernel mailing list
had a similar problem in 1998.
Upon my request John sent me the following explanation and
patch for the Linux kernel. Many many thanks!

John's explanation:
> (Digital/Compaq) UNIX uses the stronger RPC Authentication standards for
> improved security, especially when an anonymous client tries to mount a fs
> as root. Linux uses the weak (NULL) Authentication for mounting a root-fs
> using NFS, And strong authentication for most everything else.. Why???
> I'll send some mail off to find out.

The suggested patch to the Linux kernel:
> in /usr/src/linux/fs/nfs/mount_clnt.c
>
> mnt_create(char *hostname, struct sockaddr_in *srvaddr)
> {
> struct rpc_xprt *xprt;
> struct rpc_clnt *clnt;
>
> if (!(xprt = xprt_create_proto(IPPROTO_UDP, srvaddr, NULL)))
> return NULL;
>
> clnt = rpc_create_client(xprt, hostname,
> &mnt_program, NFS_MNT_VERSION,
> RPC_AUTH_NULL);
>
> Change to
> clnt = rpc_create_client(xprt, hostname,
> &mnt_program, NFS_MNT_VERSION,
> RPC_AUTH_UNIX);
> **************



My original mail
================
> I have a problem related to NFS between Linux and Tru64.
>
> My diskless PCs load a Linux 2.2.12 kernel via tftp, boot it and then
> mount the root file system via NFS.
>
> If the NFS server also runs Linux, it works.
>
> If the NFS server runs Tru64, the Linux kernel aborts the boot process
> with the error message:
> call_verify: server requires stronger authentication
> call_verify: unknown auth error: 5
> Root-NFS Server returned error -5 while mounting /DC/root
>
> What puzzles me is that an ordinary NFS mount works, i.e., once the Linux
> PC is up and running (having mounted the root fs from somewhere else),
> it's no problem to nfs-mount /DC/root from the Tru64 server, i.e.,
> it seems to be no trivial export error.
Received on Fri Sep 01 2000 - 16:32:11 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:41 NZDT