GNU/Linux man pages

GNU/Linux

CentOS 5.6

nfs(5)

NFS

NAME

nfs − nfs
and nfs4 fstab format and options

SYNOPSIS

/etc/fstab

DESCRIPTION

The
fstab file contains information about which
filesystems to mount where and with what options. For NFS
mounts, it contains the server name and exported server
directory to mount from, the local directory that is the
mount point, and the NFS specific options that control the
way the filesystem is mounted.

Three different
versions of the NFS protocol are supported by the Linux NFS
client: NFS version 2, NFS version 3, and NFS version 4. To
mount via NFS version 2, use the nfs file system type
and specify nfsvers=2. To mount via NFS version 3,
use the nfs file system type and specify
nfsvers=3. Version 3 is the default protocol version
for the nfs file system type when nfsvers= is
not specified on the mount command. To mount via NFS version
4, use the nfs4 file system type. The nfsvers=
keyword is not supported for the nfs4 file system
type.

These file
system types share similar mount options; the differences
are listed below.

Here is an
example from an /etc/fstab file for an NFSv2 mount
over UDP.

server:/usr/local/pub

/pub

nfs

rsize=32768,wsize=32768,timeo=14,intr

Here is an
example for an NFSv4 mount over TCP using Kerberos 5 mutual
authentication.

server:/usr/local/pub

/pub

nfs4

proto=tcp,sec=krb5,hard,intr

Options for
the nfs file system type

rsize=n

The number of bytes NFS uses when reading files from an
NFS server. The rsize is negotiated between the server and
client to determine the largest block size that both can
support. The value specified by this option is the maximum
size that could be used; however, the actual size used may
be smaller. Note: Setting this size to a value less than the
largest supported block size will adversely affect
performance.

wsize=n

The number of bytes NFS uses when writing files to an
NFS server. The wsize is negotiated between the server and
client to determine the largest block size that both can
support. The value specified by this option is the maximum
size that could be used; however, the actual size used may
be smaller. Note: Setting this size to a value less than the
largest supported block size will adversely affect
performance.

timeo=n

The value in tenths of a second before sending the first
retransmission after an RPC timeout. The default value is 7
tenths of a second. After the first timeout, the timeout is
doubled after each successive timeout until a maximum
timeout of 60 seconds is reached or the enough
retransmissions have occured to cause a major timeout. Then,
if the filesystem is hard mounted, each new timeout cascade
restarts at twice the initial value of the previous cascade,
again doubling at each retransmission. The maximum timeout
is always 60 seconds. Better overall performance may be
achieved by increasing the timeout when mounting on a busy
network, to a slow server, or through several routers or
gateways.

retrans=n

The number of minor timeouts and retransmissions that
must occur before a major timeout occurs. The default is 3
timeouts. When a major timeout occurs, the file operation is
either aborted or a "server not responding"
message is printed on the console.

acregmin=n

The minimum time in seconds that attributes of a regular
file should be cached before requesting fresh information
from a server. The default is 3 seconds.

acregmax=n

The maximum time in seconds that attributes of a regular
file can be cached before requesting fresh information from
a server. The default is 60 seconds.

acdirmin=n

The minimum time in seconds that attributes of a
directory should be cached before requesting fresh
information from a server. The default is 30 seconds.

acdirmax=n

The maximum time in seconds that attributes of a
directory can be cached before requesting fresh information
from a server. The default is 60 seconds.

actimeo=n

Using actimeo sets all of acregmin, acregmax,
acdirmin, and acdirmax to the same value. There
is no default value.

retry=n

The number of minutes to retry an NFS mount operation in
the foreground or background before giving up. The default
value for forground mounts is 2 minutes. The default value
for background mounts is 10000 minutes, which is roughly one
week.

namlen=n

When an NFS server does not support version two of the
RPC mount protocol, this option can be used to specify the
maximum length of a filename that is supported on the remote
filesystem. This is used to support the POSIX pathconf
functions. The default is 255 characters.

port=n

The numeric value of the port to connect to the NFS
server on. If the port number is 0 (the default) then query
the remote host’s portmapper for the port number to
use. If the remote host’s NFS daemon is not registered
with its portmapper, the standard NFS port number 2049 is
used instead.

proto=n

Mount the NFS filesystem using a
specific network protocol instead of the default TCP
protocol. Valid protocol types are udp and
tcp.

mountport=n

The numeric value of the mountd port.
mounthost=name The name of the host running mountd
.

mountprog=n

Use an alternate RPC program number to contact the mount
daemon on the remote host. This option is useful for hosts
that can run multiple NFS servers. The default value is
100005 which is the standard RPC mount daemon program
number.

mountvers=n

Use an alternate RPC version number to contact the mount
daemon on the remote host. This option is useful for hosts
that can run multiple NFS servers. The default value depends
on which kernel you are using.

nfsprog=n

Use an alternate RPC program number to contact the NFS
daemon on the remote host. This option is useful for hosts
that can run multiple NFS servers. The default value is
100003 which is the standard RPC NFS daemon program
number.

nfsvers=n

Use an alternate RPC version number to contact the NFS
daemon on the remote host. This option is useful for hosts
that can run multiple NFS servers. The default value depends
on which kernel you are using.

vers=n

vers is an alternative to nfsvers and is compatible with
many other operating systems.

nolock

Disable NFS locking. Do not start lockd. This has to be
used with some old NFS servers that don’t support
locking.

bg

If the first NFS mount attempt times out, retry the
mount in the background. After a mount operation is
backgrounded, all subsequent mounts on the same NFS server
will be backgrounded immediately, without first attempting
the mount. A missing mount point is treated as a timeout, to
allow for nested NFS mounts.

fg

If the first NFS mount attempt times out, retry the
mount in the foreground. This is the complement of the
bg option, and also the default behavior.

soft

If an NFS file operation has a major timeout then report
an I/O error to the calling program. The default is to
continue retrying NFS file operations indefinitely.

hard

If an NFS file operation has a major timeout then report
"server not responding" on the console and
continue retrying indefinitely. This is the default.

intr

If an NFS file operation has a major timeout and it is
hard mounted, then allow signals to interupt the file
operation and cause it to return EINTR to the calling
program. The default is to not allow file operations to be
interrupted.

posix

Mount the NFS filesystem using POSIX semantics. This
allows an NFS filesystem to properly support the POSIX
pathconf command by querying the mount server for the
maximum length of a filename. To do this, the remote host
must support version two of the RPC mount protocol. Many NFS
servers support only version one.

nocto

Suppress the retrieval of new attributes when creating a
file.

noac

Disable all forms of attribute caching entirely. This
extracts a significant performance penalty but it allows two
different NFS clients to get reasonable results when both
clients are actively writing to a common export on the
server.

noacl

Disables Access Control List (ACL) processing.

sec=mode

Set the security flavor for this mount to
"mode". The default setting is sec=sys,
which uses local unix uids and gids to authenticate NFS
operations (AUTH_SYS). Other currently supported settings
are: sec=krb5, which uses Kerberos V5 instead of
local unix uids and gids to authenticate users;
sec=krb5i, which uses Kerberos V5 for user
authentication and performs integrity checking of NFS
operations using secure checksums to prevent data tampering;
and sec=krb5p, which uses Kerberos V5 for user
authentication and integrity checking, and encrypts NFS
traffic to prevent traffic sniffing (this is the most secure
setting). Note that there is a performance penalty when
using integrity or privacy.

tcp

Mount the NFS filesystem using the TCP protocol. This is
the default protocol.

udp

Mount the NFS filesystem using the UDP protocol instead
of the default TCP protocol.

nordirplus

Disables NFSv3 READDIRPLUS RPCs. Use this options when
mounting servers that don’t support or have broken
READDIRPLUS implementations.

nosharecache

As of kernel 2.6.18, it is no longer possible to mount
the same same filesystem with different mount options to a
new mountpoint. It was deemed unsafe to do so, since cached
data cannot be shared between the two mountpoints. In
consequence, files or directories that were common to both
mountpoint subtrees could often be seen to be out of sync
following an update.

This option allows
administrators to select the pre-2.6.18 behaviour,
permitting the same filesystem to be mounted with different
mount options.
Beware: Use of this option is not recommended unless you
are certain that there are no hard links or subtrees of this
mountpoint that are mounted elsewhere.

lookupcache=type

This option dictates how
directories and files should be cached when they are
accessed -- i.e. "looked up" -- on the server. A
lookup can be either positive (directory/file was found) or
negative (directory/file was not found); both types of
lookups can be cached.

By default,
both positive and negative lookups are cached (
lookupcache=all ). lookupcache=pos prevents
negative lookups from being cached, while
lookupcache=none prevents all lookups from being
cached.

Note:
lookupcache=none can adversely affect performance, but may
be necessary if shared files created or deleted on the
server need to be immediately visible to any applications
running on NFS clients.

All of the
non-value options have corresponding nooption forms. For
example, nointr means don’t allow file operations to
be interrupted.

Options for
the nfs4 file system type

rsize=n

The number of bytes nfs4 uses when reading files from
the server. The rsize is negotiated between the server and
client to determine the largest block size that both can
support. The value specified by this option is the maximum
size that could be used; however, the actual size used may
be smaller. Note: Setting this size to a value less than the
largest supported block size will adversely affect
performance.

wsize=n

The number of bytes nfs4 uses when writing files to the
server. The wsize is negotiated between the server and
client to determine the largest block size that both can
support. The value specified by this option is the maximum
size that could be used; however, the actual size used may
be smaller. Note: Setting this size to a value less than the
largest supported block size will adversely affect
performance.

timeo=n

The value in tenths of a second before sending the first
retransmission after an RPC timeout. The default value
depends on whether proto=udp or proto=tcp is
in effect (see below). The default value for UDP is 7 tenths
of a second. The default value for TCP is 60 seconds. After
the first timeout, the timeout is doubled after each
successive timeout until a maximum timeout of 60 seconds is
reached or the enough retransmissions have occured to cause
a major timeout. Then, if the filesystem is hard mounted,
each new timeout cascade restarts at twice the initial value
of the previous cascade, again doubling at each
retransmission. The maximum timeout is always 60
seconds.

retrans=n

The number of minor timeouts and retransmissions that
must occur before a major timeout occurs. The default is 5
timeouts for proto=udp and 2 timeouts for
proto=tcp. When a major timeout occurs, the file
operation is either aborted or a "server not
responding" message is printed on the console.

acregmin=n

The minimum time in seconds that attributes of a regular
file should be cached before requesting fresh information
from a server. The default is 3 seconds.

acregmax=n

The maximum time in seconds that attributes of a regular
file can be cached before requesting fresh information from
a server. The default is 60 seconds.

acdirmin=n

The minimum time in seconds that attributes of a
directory should be cached before requesting fresh
information from a server. The default is 30 seconds.

acdirmax=n

The maximum time in seconds that attributes of a
directory can be cached before requesting fresh information
from a server. The default is 60 seconds.

actimeo=n

Using actimeo sets all of acregmin, acregmax,
acdirmin, and acdirmax to the same value. There
is no default value.

retry=n

The number of minutes to retry an NFS mount operation in
the foreground or background before giving up. The default
value for forground mounts is 2 minutes. The default value
for background mounts is 10000 minutes, which is roughly one
week.

port=n

The numeric value of the port to connect to the NFS
server on. If the port number is 0 (the default) then query
the remote host’s portmapper for the port number to
use. If the remote host’s NFS daemon is not registered
with its portmapper, the standard NFS port number 2049 is
used instead.

proto=n

Mount the NFS filesystem using a specific network
protocol instead of the default TCP protocol. Valid protocol
types are udp and tcp. Many NFS version 4
servers only support the TCP protocol.

clientaddr=n

On a multi-homed client, this causes the client to use a
specific callback address when communicating with an NFS
version 4 server. This option is currently ignored.

sec=mode

Same as sec=mode for the nfs filesystem type (see
above).

bg

If an NFS mount attempt times out, retry the mount in
the background. After a mount operation is backgrounded, all
subsequent mounts on the same NFS server will be
backgrounded immediately, without first attempting the
mount. A missing mount point is treated as a timeout, to
allow for nested NFS mounts.

fg

If the first NFS mount attempt times out, retry the
mount in the foreground. This is the complement of the
bg option, and also the default behavior.

soft

If an NFS file operation has a major timeout then report
an I/O error to the calling program. The default is to
continue retrying NFS file operations indefinitely.

hard

If an NFS file operation has a major timeout then report
"server not responding" on the console and
continue retrying indefinitely. This is the default.

intr

If an NFS file operation has a major timeout and it is
hard mounted, then allow signals to interupt the file
operation and cause it to return EINTR to the calling
program. The default is to not allow file operations to be
interrupted.

nocto

Suppress the retrieval of new attributes when creating a
file.

noac

Disable attribute caching, and force synchronous writes.
This extracts a server performance penalty but it allows two
different NFS clients to get reasonable good results when
both clients are actively writing to common filesystem on
the server.

nosharecache

As of kernel 2.6.18, it is no longer possible to mount
the same same filesystem with different mount options to a
new mountpoint. It was deemed unsafe to do so, since cached
data cannot be shared between the two mountpoints. In
consequence, files or directories that were common to both
mountpoint subtrees could often be seen to be out of sync
following an update.

This option allows
administrators to select the pre-2.6.18 behaviour,
permitting the same filesystem to be mounted with different
mount options.
Beware: Use of this option is not recommended unless you
are certain that there are no hard links or subtrees of this
mountpoint that are mounted elsewhere.

fsc

Enable the use of persistent
caching to the local disk using the FS-Cache facility for
the given mount point.

All of the
non-value options have corresponding nooption forms. For
example, nointr means don’t allow file operations to
be interrupted.

FILES

/etc/fstab

SEE ALSO

fstab(5),
mount(8), umount(8), exports(5)

AUTHOR

"Rick
Sladkey" <jrs@world.std.com>

BUGS

The posix
option is implemented but is currently ignored by the Linux
kernel.

Checking files
on NFS filesystem referenced by file descriptors (i.e. the
fcntl and ioctl families of functions) may
lead to inconsistent result due to the lack of consistency
check in kernel even if noac is used.