Archive for July, 2007

Solaris x86 customized Jumpstart from Linux NFS server — NFSv4 problem and solution

Friday, July 6th, 2007

There is some kind of incompatibility between Linux 2.6 NFSv4 server nad Solaris 10 (U3) NFSv4 client. On installed Solaris you can put some variables into /etc/default/nfs and it should work, but when you are trying to bootstrap from Linux NFS server using Jumpstart you have to search for another solution:

1) Build a new miniroot image with /etc/default/nfs altered?
2) Simpler… alter Linux NFS server to provide only eg. only NFSv2 service
This can be achieved by recompiling kernel without NFSv4 or by much more cleaner solution – disabling NFSv4 services on runtime.

Place the following in /etc/sysconfig/nfs (RHEL5/CentOS5 specific configuration file):
RPCMOUNTDOPTS="--no-tcp --no-nfs-version 4 --no-nfs-version 3"
RPCNFSDARGS="--no-tcp --no-nfs-version 4 --no-nfs-version 3"

Now execute
/etc/init.d/nfs restart
That’s all! :) Jumpstart problem solved!

For more info consider reading man pages for rpc.nfsd and rpc.mountd. Internally those switches write “+2 -3 -4″ to /proc/fs/nfsd/versions. Versions file can be only modified after stopping [nfsd] kernel service ( you’ll get EBUSY errno while trying to change it with nfsd lanuched ).