* You are viewing the archive for the ‘nfs’ Category

Mounting Linux NFS share: Not owner

I was trying to mount a RHEL 4 NFS share in Solaris 10. But for whatever reason I just could not seem to get it mounted. It would always come back with “Not owner” error:

bash-3.00# mount -F nfs carbon:/media/cdrecorder /mnt/carbon
nfs mount: mount: /mnt/carbon: Not owner

So, I checked and rechecked my settings with no success. Then, I remembered reading something somewhere about NFS v4 in Linux being not so great at one time. Since the Linux box was running RHEL 4 I tought this might be my problem. So, I decided to force mount using NFS v3, since Solaris 10 will try to mount the Linux share using NFS v4 first.

bash-3.00# mount -F nfs -o vers=3 carbon:/media/cdrecorder /mnt/carbon
bash-3.00# cd /mnt/carbon
bash-3.00#

That worked well. Since this was one time mounting job, I did not bother any further. If I would be doing this on regular basis I would probably edit /etc/default/nfs on the Solaris box and force maximum NFS client version to be v3. Continue Reading

Increasing number of NFS servers on Sun Cluster

By default Solaris 10 starts 16 NFS servers to handle NFS requests. You can tune this by editing /etc/default/nfs file.
<—————–SNIP—————->
# Maximum number of concurrent NFS requests.
# Equivalent to last numeric argument on nfsd command line.
NFSD_SERVERS=16

<—————–SNIP—————->
Changing above variables did not seem to have any effects on how many NFS server Sun Cluster started. Poking around I found nfs_start_daemons script which is part of SUNWscnfs package. In my case it was in /opt/SUNWscnfs/bin directory. It turns out that this script is looking at pre-Solaris 10 nfs.server init script to determine if more than 16 NFS servers are supposed to be started. In Solaris 10 NFS server as most of the services is handled by SMF. The /etc/init.d/nfs.server script is still present, probably due to legacy reasons, but it simply calls svcadm command to start NFS. Here is the relevant section of nfs_start_daemons script:
<—————–SNIP—————->
DEFAULT_NFSDCMD="/usr/lib/nfs/nfsd -a 16"
if [ -f /etc/init.d/nfs.server ]; then
NFSDCMD="`egrep '^[^#]*/usr/lib/nfs/nfsd' \
/etc/init.d/nfs.server \
2>/dev/null | head -1`"
fi

<—————–SNIP—————->
In order to increase number of NFS server that get started by Sun Cluster, you must change the number 16 above to something higher like 1024. Continue Reading

NFS4 Invalid inbound domain name

It seems that starting with Solaris 06/07 nfs4_domain is required in sysidcfg file, otherwise jumpstart will go interactive. You can force a value for example nfs4_domain=example.net or you can set it to be dynamic. In that case the value will be derived from the name service in use. Solaris 10 has nfsmapid daemon that maps numeric UID/GID to a string in format user@example.net.

If there is a domain mismatch between NFS4 client and server, the client will see files on the server owned by nobody. On the server syslog might log something like this:

Mar 3 15:13:14 ultra /usr/lib/nfs/nfsmapid[275]: [ID 300081 daemon.error] valid_domain: Invalid inbound domain name example.net..

In my case there was a typo in /etc/resolv.conf file at the end of domain entry. The entry contained trailing dot. This Sun document has all the useful info that might help troubleshooting similar problems with nfsmapid.

Continue Reading