As mentioned in post title it is not about NFS mount issues but some issues that I’ve seen on client because of options used while mounting.
- Not able to execute shell script:
We have a bash shell script and getting permission denied error while running it. Execute permissions are set “755”. Checked if the bash interpretor mentioned as first line and it is present “#!/bin/bash”.
A: When we run the script with “/bin/bash script.sh” then it is executing with no problems. In the end found that the script is on a mount which is mounted with option “noexec”. While running with bash we are asking the shell to execute the script on behalf of us so it is being executed fine.
2. Not able to mount old export
On the new RHEL servers NFS mounts by default expects version 4 mounts. If you have some old mounts running exported with version 3 then we cannot mount unless we specify “nfsvers=3” as mount option.
The NFS protocol version number used to contact the server’s NFS service. If the server does not support the requested version, the mount request fails. If this option is not specified, the client negotiates a suitable version with the server, trying version 4 first, version 3 second, and version 2 last.
This option is an alternative to the nfsvers option. It is included for compatibility with other operating systems.
3. Very low timeout option
Setting a low timeo with NFS over TCP causes the NFS client to overrides the superior TCP error handling. Server instability, degraded performance on both nfs client and nfs server and wasted compute and network resources.
1. uses the less common time unit deciseconds (tenths of a second) 2. represents time NFS client waits for a response before it retries an NFS request (in full) 3. The setting is carry over from legacy days with NFS was only over UDP 4. NFS over TCP a. the default timeo value is 600 (60 seconds) b. utilises TCP error handling which is far more efficient c. client performs linear backoff: After each retransmission the timeout is increased by timeo up to the maximum of 600 seconds