X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=utils%2Fexportfs%2Fexports.man;h=3aa8de8ab45b6af86d842c6f502929318556c39e;hp=7aa60fc0b132d3e38992d5aca16a9201aa34709c;hb=e91ff0175602cc56f223f1d92de6511099fa40d1;hpb=6a7d90cea7650d4a40816368a61f1541a43d016c diff --git a/utils/exportfs/exports.man b/utils/exportfs/exports.man index 7aa60fc..3aa8de8 100644 --- a/utils/exportfs/exports.man +++ b/utils/exportfs/exports.man @@ -22,6 +22,11 @@ client may be immediately followed by a parenthesized, comma-separated list of export options for that client. No whitespace is permitted between a client and its option list. .PP +Also, each line may have one or more specifications for default options +after the path name, in the form of a dash ("\-") followed by an option +list. The option list is used for all subsequent exports on that line +only. +.PP Blank lines are ignored. A pound sign ("#") introduces a comment to the end of the line. Entries may be continued across newlines using a backslash. If an export name contains spaces it should be quoted using @@ -88,7 +93,7 @@ rpcsec_gss and to make requirements on the IP address of the client. understands the following export options: .TP .IR secure "\*d -This option requires that requests originate on an internet port less +This option requires that requests originate on an Internet port less than IPPORT_RESERVED (1024). This option is on by default. To turn it off, specify .IR insecure . @@ -116,13 +121,13 @@ storage (see .IR async above). -In releases of nfs-utils upto and including 1.0.0, this option was the +In releases of nfs-utils up to and including 1.0.0, this option was the default. In all subsequence releases, .I sync is the default, and .I async -must be explicit requested if needed. -To help make system adminstrators aware of this change, 'exportfs' +must be explicitly requested if needed. +To help make system administrators aware of this change, 'exportfs' will issue a warning if neither .I sync nor @@ -297,30 +302,37 @@ if, for example, the filesystem failed to mount due to a disc error. If a path is given (e.g. .IR mountpoint= "/path or " mp= /path) -then the nominted path must be a mountpoint for the exportpoint to be +then the nominated path must be a mountpoint for the exportpoint to be exported. .TP -.IR fsid= num -This option forces the filesystem identification portion of the file -handle and file attributes used on the wire to be -.I num -instead of a number derived from the major and minor number of the -block device on which the filesystem is mounted. Any 32 bit number -can be used, but it must be unique amongst all the exported filesystems. +.IR fsid= num|root|uuid +NFS needs to be able to identify each filesystem that it exports. +Normally it will use a UUID for the filesystem (if the filesystem has +such a thing) or the device number of the device holding the +filesystem (if the filesystem is stored on the device). + +As not all filesystems are stored on devices, and not all filesystems +have UUIDs, it is sometimes necessary to explicitly tell NFS how to +identify a filesystem. This is done with the +.I fsid= +option. -This can be useful for NFS failover, to ensure that both servers of -the failover pair use the same NFS file handles for the shared filesystem -thus avoiding stale file handles after failover. +For NFSv4, there is a distinguished filesystem which is the root of +all exported filesystem. This is specified with +.I fsid=root +or +.I fsid=0 +both of which mean exactly the same thing. -Some Linux filesystems are not mounted on a block device; exporting -these via NFS requires the use of the -.I fsid -option (although that may still not be enough). +Other filesystems can be identified with a small integer, or a UUID +which should contain 32 hex digits and arbitrary punctuation. -The value 0 has a special meaning when use with NFSv4. NFSv4 has a -concept of a root of the overall exported filesystem. The export point -exported with fsid=0 will be used as this root. +Linux kernels version 2.6.20 and earlier do not understand the UUID +setting so a small integer must be used if an fsid option needs to be +set for such kernels. Setting both a small number and a UUID is +supported so the same configuration can be made to work on old and new +kernels alike. .SS User ID Mapping .PP @@ -402,8 +414,11 @@ Here's the complete list of mapping options: .TP .IR root_squash Map requests from uid/gid 0 to the anonymous uid/gid. Note that this does -not apply to any other uids that might be equally sensitive, such as user -.IR bin . +not apply to any other uids or gids that might be equally sensitive, such as +user +.IR bin +or group +.IR staff . .TP .IR no_root_squash Turn off root squashing. This option is mainly useful for diskless clients. @@ -496,6 +511,7 @@ is supposedly that of user joe). /usr *.local.domain(ro) @trusted(rw) /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) /pub (ro,insecure,all_squash) +/srv/www \-sync,rw server @trusted @external(ro) '''/pub/private (noaccess) .fi .PP @@ -509,6 +525,9 @@ under the nobody account. The .I insecure option in this entry also allows clients with NFS implementations that don't use a reserved port for NFS. +The sixth line exports a directory read-write to the machine 'server' +as well as the `@trusted' netgroup, and read-only to netgroup `@external', +all three mounts with the `sync' option enabled. ''' The last line denies all NFS clients '''access to the private directory. '''.SH CAVEATS