"Server for NFS" service exhibits different behaviour when restarted using different options

While working on a issue recently, we found that there was a difference in behaviour when we restart the "Server for NFS" service from the services console compare to restarting it using the "nfsadmin" command. The issue was happening after a disk was reformatted and could be reproduce if the Service was started from the services console. While if we start the service from the 'nfsadmin' command, the issue cannot be reproduced. 

Actually there are two pieces in the “server for NFS” architecture – the user mode service and the kernel mode driver. When we restart the services from the services console only one of the services gets restarted. When we use nfsadmin, it stops/starts both the kernel mode driver and user mode service. This is what is causing the difference.

You can also achieve the same by individually stopping the user mode service and driver using the net command instead of nfsadmin. You would need to run the command below:

  • net stop nfsservice
  • net stop nfsserver

 

When starting, you can just start nfsservice which automatically starts nfsserver.