Provided by: nfs-kernel-server_1.0.7-3ubuntu2_i386 bug


       exportfs - maintain list of NFS exported file systems


       /usr/sbin/exportfs [-avi] [-o options,..] [client:/path ..]
       /usr/sbin/exportfs -r [-v]
       /usr/sbin/exportfs [-av] -u [client:/path ..]
       /usr/sbin/exportfs [-v]
       /usr/sbin/exportfs -f


       The  exportfs command is used to maintain the current table of exported
       file systems for NFS. This list  is  kept  in  a  separate  file  named
       /var/lib/nfs/xtab  which  is read by mountd when a remote host requests
       access to mount a file tree, and parts of the list which are active are
       kept in the kernel’s export table.

       Normally  this  xtab  file  is  initialized  with  the list of all file
       systems named in /etc/exports by invoking exportfs -a.

       However, administrators can choose to add and  delete  individual  file
       systems without modifying /etc/exports using exportfs.

       exportfs  and  it’s  partner program mountd work in one of two modes, a
       legacy mode which applies to 2.4 and  earlier  versions  of  the  Linux
       kernel,  and  a  new  mode  which  applies  to  2.6  and later versions
       providing the nfsd virtual filesystem has been mounted at /proc/fs/nfsd
       or  /proc/fs/nfs.  If this filesystem is not mounted in 2.6, the legacy
       mode is used.

       In the new mode, exportfs does not give any information to  the  kernel
       but  only  provides  it  to  mountd through the /var/lib/nfs/xtab file.
       mountd will listen  to  requests  from  the  kernel  and  will  provide
       information as needed.

       In  the legacy mode, any export requests which identify a specific host
       (rather than a subnet or netgroup etc) are entered  directly  into  the
       kernel’s  export  table  as well as being written to /var/lib/nfs/xtab.
       Further, any mount points listed in /var/lib/nfs/rmtab  which  match  a
       non host-specific export request will cause an appropriate export entry
       for the host given in rmtab to be  entered  into  the  kernel’s  export


       -a     Export or unexport all directories.

       -o options,...
              Specify  a  list  of  export  options  in  the same manner as in

       -i     Ignore the /etc/exports file, so that only default  options  and
              options given on the command line are used.

       -r     Reexport all directories. It synchronizes /var/lib/nfs/xtab with
              /etc/exports. It removes entries in /var/lib/nfs/xtab which  are
              deleted  from  /etc/exports,  and  remove  any  entries from the
              kernel export table which are no longer valid.

       -u     Unexport one or more directories.

       -f     In ’new’ mode, flush everything out of the kernels export table.
              Any clients that are active will get new entries added by mountd
              when they make their next request.

       -v     Be verbose. When exporting or unexporting, show what’s going on.
              When  displaying  the current export list, also display the list
              of export options.


   Exporting Directories
       The first synopsis shows how to invoke  the  command  when  adding  new
       entries  to  the export table.  When using exportfs -a, all directories
       in exports(5) are added to xtab and the resulting list is  pushed  into
       the kernel.

       The  host:/path  argument  specifies the directory to export along with
       the host or hosts to export it to. All formats described in  exports(5)
       are  supported;  to  export  a  directory  to the world, simply specify

       The export options for a particular  host/directory  pair  derive  from
       several  sources.   There  is  a  set  of  default options which can be
       overridden by entries in /etc/exports (unless the -i option is  given).
       In  addition,  the  administrator  may  overide  any options from these
       sources using the -o argument which takes  a  comma-separated  list  of
       options  in  the  same fashion as one would specify them in exports(5).
       Thus, exportfs can also be used to modify  the  export  options  of  an
       already exported directory.

       Modifications  of  the  kernel  export table used by nfsd(8) take place
       immediately after parsing the command line and updating the xtab  file.

       The default export options are sync,ro,root_squash,no_delay.

   Unexporting Directories
       The  third  synopsis  shows  how  to  unexported  a  currently exported
       directory.  When using exportfs -ua, all entries  listed  in  xtab  are
       removed  from  the  kernel export tables, and the file is cleared. This
       effectively shuts down all NFS activity.

       To remove individial export entries, one can specify a host:/path pair.
       This   deletes   the   specified   entry  from  xtab  and  removes  the
       corresponding kernel entry (if any).

   Dumping the Export Table
       Invoking exportfs without further options shows  the  current  list  of
       exported  file  systems.   When giving the -v option, the list of flags
       pertaining to each export are shown in addition.


       The  following  adds  all  directories  listed   in   /etc/exports   to
       /var/lib/nfs/xtab  and  pushes  the  resulting  export entries into the

       # exportfs -a

       To export the /usr/tmp directory to host djando, allowing  asynchronous
       writes, one would do this:

       # exportfs -o async django:/usr/tmp


       Exporting  to  IP networks, DNS and NIS domains does not enable clients
       from these groups to access NFS immediately;  rather,  these  sorts  of
       exports  are  hints to mountd(8) to grant any mount requests from these
       clients.  This is usually not  a  big  problem,  because  any  existing
       mounts are preserved in rmtab across reboots.

       When  unexporting  a  network  or  domain entry, any current exports to
       members of this group will  be  checked  against  the  remaining  valid
       exports and if they themselves are nolonger valid they will be removed.


       exports(5), mountd(8)


       Olaf Kirch, <>
       Neil Brown, <>

                                 18 July 2003                      exportfs(8)