From Bugzilla Helper: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Description of problem: Solaris 10 client unable to mount RHEL4 NFS exported mounts Error on Solaris client is: Version-Release number of selected component (if applicable): kernel-2.6.9-5.ELsmp (RHEL4 Nahant) How reproducible: Always Steps to Reproduce: 1. Mount any exported NFS directory on a RHEL4 server on any Solaris 10 client 2. 3. Actual Results: Output from Solaris 10 client command line: "Permission Denied" Output from /var/adm/messages on Solaris 10 client: Aug 26 11:59:49 solaris10.preston.net nfs: [ID 435675 kern.warning] WARNING: NFS server initial call to rhel4box failed: Not owner Aug 26 11:59:49 solaris10.preston.net automountd[2288]: [ID 834250 daemon.error] Mount of rhel4box:/home/staff/taamtest1 on /staff/taamtest1: Not owner Expected Results: Successful mount without error. Additional info: On modifying Solaris client to use NFSv3 by modifying "NFS_CLIENT_VERSMAX=3" in /etc/default/nfs on the Solaris 10 client, the mount is successful. Will also logg a bug with SUN support. Please try and resolve the problem instead of pointing fingers at each other.
"Permission Denied" generally means there is an export problem on the server. What do the exports on the server look like? Also an bzip2 tethereal network trace would be good as well.
Created attachment 118957 [details] Ethereal Bzip2 log file during NFSv4 session failed
The following /etc/exports is on the RHEL4 server which hosts the export (/home/staff/james). /home *(rw,no_root_squash) /tmp *(rw,no_root_squash) The "permission denied" error was generated on the Solaris 10 client.
Try the following exports: / *(ro,sync,fsid=0) /home *(rw,sync,nohide,no_root_squash) if /home is a different filesystem then try / *(ro,sync,fsid=0) /home *(rw,sync,nohide,no_root_squash,fsid=1) Also having a binary ethereal trace would be better than an ascii one, since it allows one to dig down into the details of the protocols. To generate a binary trace use the -w flag. i.e. tethereal -w /tmp/trace.pcap host server
As the original RHEL4 server (caracal) is in production I have used my own desktop (steven) running RHEL4 as an NFSv4 server. It has the following exports as recommended: File: /etc/exports on steven.preston.net / *(ro,sync,fsid=0) /win *(rw,sync,nohide,no_root_squash,fsid=1) Mounting steven:/win /tmp/mnt on the Solaris 10 client (boxer) was successful without any error. The tethereal binary output (nfsv4.log.bz2) during the above attempt is attached. Please note that the IP address of boxer is 202.14.10.28.
Created attachment 119007 [details] Tethereal -w bzip2 outtput on RHEL4 server using NFSv4
Good... I'm glad hear things are working... So can I close this bug?
Can you please explain why "fsid" option is required to get NFSv4 working, is this a bug, will this break all previous exports that used to work in RHEL3 ?
It's important to note this is not specific to Solaris clients. RHEL4 and FC3 clients behave the same way. Setting to NEEDINFO_ENG until comment 8 is answered.
We've taken to creating /etc/sysconfig/nfs with the line RPCNFSDARGS="-N 4" to handle this issue. Many of our machines only export /.
David, fsid=0 denotes the root of the NFSv4 namespace. NFSv4 is different from v2/3 in that the exported namespace can be different from how the actual filesystem looks on the server (note that some of this is still work in progress upstream). Given that this doesn't seem to have been a bug, I'll close it as such.