bfa06e08eec72d6e737d14bc0b10aad74290fd79
[nfs-utils.git] / utils / mountd / mountd.man
1 .\"
2 .\" mountd(8)
3 .\"
4 .\" Copyright (C) 1999 Olaf Kirch <okir@monad.swb.de>
5 .\" Modified by Paul Clements, 2004.
6 .TH rpc.mountd 8 "31 Aug 2004"
7 .SH NAME
8 rpc.mountd \- NFS mount daemon
9 .SH SYNOPSIS
10 .BI "/usr/sbin/rpc.mountd [" options "]"
11 .SH DESCRIPTION
12 The
13 .B rpc.mountd
14 program implements the NFS mount protocol. When receiving a MOUNT
15 request from an NFS client, it checks the request against the list of
16 currently exported file systems. If the client is permitted to mount
17 the file system,
18 .B rpc.mountd
19 obtains a file handle for requested directory and returns it to
20 the client.
21 .SS Exporting NFS File Systems
22 Making file systems available to NFS clients is called
23 .IR exporting .
24 .P
25 Usually, a file system and the hosts it should be made available to
26 are listed in the
27 .B /etc/exports
28 file, and invoking
29 .B exportfs -a
30 whenever the system is booted. The
31 .BR exportfs (8)
32 command makes export information available to both the kernel NFS
33 server module and the
34 .B rpc.mountd
35 daemon.
36 .P
37 Alternatively, you can export individual directories temporarily 
38 using
39 .BR exportfs 's
40 .IB host : /directory
41 syntax.
42 .SS The rmtab File
43 For every mount request received from an NFS client,
44 .B rpc.mountd
45 adds an entry to the
46 .B /var/lib/nfs/rmtab
47 file. When receiving an unmount request, that entry is removed.
48 .P
49 However, this file is mostly ornamental. One, the client can continue
50 to use the file handle even after calling
51 .B rpc.mountd 's
52 UMOUNT procedure. And two, if a client reboots without notifying
53 .B rpc.mountd ,
54 a stale entry will remain in
55 .BR rmtab .
56 .SH OPTIONS
57 .TP
58 .B \-d kind " or " \-\-debug kind
59 Turn on debugging. Valid kinds are: all, auth, call, general and parse.
60 .TP
61 .B \-F " or " \-\-foreground
62 Run in foreground (do not daemonize)
63 .TP
64 .B \-f " or " \-\-exports-file
65 This option specifies the exports file, listing the clients that this
66 server is prepared to serve and parameters to apply to each
67 such mount (see
68 .BR exports (5)).
69 By default, export information is read from
70 .IR /etc/exports .
71 .TP
72 .B \-h " or " \-\-help
73 Display usage message.
74 .TP
75 .B \-o num " or " \-\-descriptors num
76 Set the limit of the number of open file descriptors to num. The
77 default is to leave the limit unchanged.
78 .TP
79 .B \-N " or " \-\-no-nfs-version
80 This option can be used to request that
81 .B rpc.mountd
82 do not offer certain versions of NFS. The current version of
83 .B rpc.mountd
84 can support both NFS version 2 and the newer version 3. If the
85 NFS kernel module was compiled without support for NFSv3,
86 .B rpc.mountd
87 must be invoked with the option
88 .B "\-\-no-nfs-version 3" .
89 .TP
90 .B \-n " or " \-\-no-tcp
91 Don't advertise TCP for mount.
92 .TP
93 .B \-P
94 Ignored (compatibility with unfsd??).
95 .TP
96 .B \-p " or " \-\-port num
97 Force
98 .B rpc.mountd
99 to bind to the specified port num, instead of using the random port
100 number assigned by the portmapper.
101 .TP
102 .B \-H " or " \-\-ha-callout prog
103 Specify a high availability callout program, which will receive callouts
104 for all client mount and unmount requests. This allows 
105 .B rpc.mountd
106 to be used in a High Availability NFS (HA-NFS) environment. This callout is not
107 needed (and should not be used) with 2.6 and later kernels (instead,
108 mount the nfsd filesystem on
109 .B /proc/fs/nfsd
110 ).
111 The program will be called with 4 arguments.
112 The first will be
113 .B mount
114 or
115 .B unmount
116 depending on the reason for the callout.
117 The second will be the name of the client performing the mount.
118 The third will be the path that the client is mounting.
119 The last is the number of concurrent mounts that we believe the client
120 has of that path.
121 .TP
122 .BI "\-s," "" " \-\-state\-directory\-path "  directory
123 specify a directory in which to place statd state information.
124 If this option is not specified the default of
125 .BR /var/lib/nfs
126 is used.
127 .TP
128 .BI "\-r," "" " \-\-reverse\-lookup"
129 mountd tracks IP addresses in the rmtab, and when a DUMP request is made (by
130 someone running showmount -a, for instance), it returns IP addresses instead
131 of hostnames by default. This option causes mountd to do a reverse
132 lookup on each IP address and return that hostname instead. Enabling this can
133 have a substantial negative effect on performance in some situations.
134 .TP
135 .BR "\-t N" " or " "\-\-num\-threads=N"
136 This option specifies the number of worker threads that rpc.mountd
137 spawns.  The default is 1 thread, which is probably enough.  More
138 threads are usually only needed for NFS servers which need to handle
139 mount storms of hundreds of NFS mounts in a few seconds, or when
140 your DNS server is slow or unreliable.
141 .TP
142 .B \-V " or " \-\-nfs-version
143 This option can be used to request that
144 .B rpc.mountd
145 offer certain versions of NFS. The current version of
146 .B rpc.mountd
147 can support both NFS version 2 and the newer version 3.
148 .TP
149 .B \-v " or " \-\-version
150 Print the version of
151 .B rpc.mountd
152 and exit.
153 .TP
154 .B \-g " or " \-\-manage-gids
155 Accept requests from the kernel to map user id numbers into  lists of
156 group id numbers for use in access control.  An NFS request will
157 normally (except when using Kerberos or other cryptographic
158 authentication) contains a user-id and a list of group-ids.  Due to a
159 limitation in the NFS protocol, at most 16 groups ids can be listed.
160 If you use the
161 .B \-g
162 flag, then the list of group ids received from the client will be
163 replaced by a list of group ids determined by an appropriate lookup on
164 the server. Note that the 'primary' group id is not affected so a
165 .I newgroup
166 command on the client will still be effective.  This function requires
167 a Linux Kernel with version at least 2.6.21.
168
169 .SH TCP_WRAPPERS SUPPORT
170 This
171 .B rpc.mountd
172 version is protected by the
173 .B tcp_wrapper
174 library. You have to give the clients access to
175 .B rpc.mountd
176 if they should be allowed to use it. To allow connects from clients of
177 the .bar.com domain you could use the following line in /etc/hosts.allow:
178
179 mountd: .bar.com
180
181 You have to use the daemon name 
182 .B mountd
183 for the daemon name (even if the binary has a different name).
184 .B Note:
185 hostnames used in either access file will be ignored when
186 they can not be resolved into IP addresses.
187
188 For further information please have a look at the
189 .BR tcpd (8)
190 and
191 .BR hosts_access (5)
192 manual pages.
193 .SH SEE ALSO
194 .BR rpc.nfsd (8),
195 .BR exportfs (8),
196 .BR exports (5),
197 .BR rpc.rquotad (8).
198 .SH FILES
199 .BR /etc/exports ,
200 .BR /var/lib/nfs/xtab .
201 .SH AUTHOR
202 Olaf Kirch, H. J. Lu, G. Allan Morris III, and a host of others.