In trying to set up NFS on Fedora 12 to run *exclusively* NFSv4, I made the following change to /etc/sysconfig/nfs (obviously to deactivate support for all earlier versions): MOUNTD_NFS_V1="no" MOUNTD_NFS_V2="no" MOUNTD_NFS_V3="no" However, when I tried to start NFS: # service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS daemon: [ OK ] Starting NFS mountd: Usage: rpc.mountd [-F|--foreground] [-h|--help] [-v|--version] [-d kind|--debug kind] [-o num|--descriptors num] [-f exports-file|--exports-file=file] [-p|--port port] [-V version|--nfs-version version] [-N version|--no-nfs-version version] [-n|--no-tcp] [-H ha-callout-prog] [-s|--state-directory-path path] [-g|--manage-gids] [-t num|--num-threads=num] [FAILED] # As a solution (based on advice in a private email), I added back in NFSv1: #MOUNTD_NFS_V1="no" <-- commented out MOUNTD_NFS_V2="no" MOUNTD_NFS_V3="no" and now starting NFS works just fine: # service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS daemon: [ OK ] Starting NFS mountd: [ OK ] This says nothing about whether mounts work or whether NFS performs properly when restricted to version 4, it simply addresses an error starting rpc.mountd.
As an additional test, I edited /etc/sysconfig/nfs and tried to configure it so that nfsd also had no support for NFSv1: # Turn off v2 and v3 protocol support RPCNFSDARGS="-N 1 -N 2 -N 3" (added "-N 1") When I tried to start NFS: # service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS daemon: 1: Unsupported version [FAILED] # It seems pretty clear that references to NFSv1 are causing problems. Perhaps such references should be either removed or ignored.
As a general observation, this bug report came about via my efforts to try to set up Fedora 12 to run an NFSv4 *only* configuration (that is, by explicitly de-selecting support for all earlier versions). It seems clear that a number of the startup scripts and config files should be updated to allow for this. In particular, NFSv4 allegedly no longer needs to invoke rpc.mountd or rpc.statd on the server side, so if one is trying to run exclusively NFSv4, perhaps those daemons shouldn't even be started. In any event, if it should be possible to run NFSv4 only, the NFS packages should be updated to reflect this.
(In reply to comment #2) > In particular, NFSv4 allegedly no longer needs to invoke rpc.mountd or > rpc.statd on the server side, so if one is trying to run exclusively NFSv4, > perhaps those daemons shouldn't even be started. > That's not true, at least not wrt to rpc.mountd. rpc.mountd is still necessary to tell the kernel whether access from a particular host is allowed. It is true however that it doesn't need to listen on a socket or register with rpcbind in a v4-only configuration. The nfs-utils rpc.mountd hasn't yet been fixed to allow this sort of configuration though and still insists on advertising at least one network service.
Please upgrade to Fedora 13 to have NFSv4 *only* configuration.