This file contains site-specific configuration for various NFS
daemons and other processes. Most configuration can also be passed
to processes via command line arguments, but it can be more
convenient to have a central file. In particular, this encourages
consistent configuration across different processes.
When command line options are provided, they override values set in
this file. When this file does not specify a particular parameter,
and no command line option is provided, each tool provides its own
The file format supports multiple sections, each of which can contain
multiple value assignments. A section is introduced by a line
containing the section name enclosed in square brackets, so
would introduce a section called global. A value assignment is a
single line that has the name of the value, an equals sign, and a
setting for the value, so
threads = 4
would set the value named threads in the current section to 4.
Leading and trailing spaces and tab are ignored, as are spaces and
tabs surrounding the equals sign. Single and double quotes
surrounding the assigned value are also removed. If the resulting
string is empty, the whole assignment is ignored.
Any line starting with “#” or “;” is ignored, as is any blank line.
If the assigned value started with a “$” then the remainder is
treated as a name and looked for in the section [environment] or in
the processes environment (see environ(7)). The value found is used
for this value.
The value name include is special. If a section contains
include = /some/file/name
then the named file will be read, and any value assignments found
there-in will be added to the current section. If the file contains
section headers, then new sections will be created just as if the
included file appeared in place of the include line.
Lookup of section and value names is case-insensitive.
Where a Boolean value is expected, any of true, t, yes, y, on, or 1
can be used for "true", while false, f, no, n, off, or 0 can be used
for "false". Comparisons are case-insensitive.
The following sections are known to various programs, and can contain
the given named values. Most sections can also contain a debug
value, which can be one or more from the list general, call, auth,
parse, all. When a list is given, the members should be comma-
Recognized values: storagedir.
The nfsdcltrack program is run directly by the Linux kernel
and there is no opportunity to provide command line arguments,
so the configuration file is the only way to configure this
program. See nfsdcltrack(8) for details.
nfsd Recognized values: threads, host, port, grace-time, lease-time, udp, tcp, vers2, vers3, vers4, vers4.0, vers4.1,
Version and protocol values are Boolean values as described
above, and are also used by rpc.mountd. Threads and the two
times are integers. port and rdma are service names or
numbers. See rpc.nfsd(8) for details.
mountd Recognized values: manage-gids, descriptors, port, threads,
reverse-lookup, state-directory-path, ha-callout.
These, together with the protocol and version values in the
[nfsd] section, are used to configure mountd. See
rpc.mountd(8) for details.
The state-directory-path value in the [mountd] section is also
used by exportfs(8).
statd Recognized values: port, outgoing-port, name, state-directory-path, ha-callout.
See rpc.statd(8) for details.
lockd Recognized values: port and udp-port.
See rpc.statd(8) for details.
Recognized values: retry-time, outgoing-port, and outgoing-addr.
See sm-notify(8) for details.
gssd Recognized values: use-memcache, use-machine-creds, avoid-dns,
limit-to-legacy-enctypes, context-timeout, rpc-timeout,
pipefs-directory, keytab-file, cred-cache-directory,
See rpc.gssd(8) for details.
Recognized values: principal.
See rpc.svcgssd(8) for details.
Only debug= is recognized.