Initial import from FreeBSD RELENG_4:
[dragonfly.git] / sbin / nfsd / nfsd.8
1 .\" Copyright (c) 1989, 1991, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"     This product includes software developed by the University of
15 .\"     California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)nfsd.8      8.4 (Berkeley) 3/29/95
33 .\" $FreeBSD: src/sbin/nfsd/nfsd.8,v 1.12.2.3 2002/05/20 18:06:11 gordon Exp $
34 .\"
35 .Dd March 29, 1995
36 .Dt NFSD 8
37 .Os
38 .Sh NAME
39 .Nm nfsd
40 .Nd remote
41 .Tn NFS
42 server
43 .Sh SYNOPSIS
44 .Nm
45 .Op Fl arut
46 .Op Fl n Ar num_servers
47 .Op Fl h Ar bindip
48 .Sh DESCRIPTION
49 .Nm Nfsd
50 runs on a server machine to service
51 .Tn NFS
52 requests from client machines.
53 At least one
54 .Nm
55 must be running for a machine to operate as a server.
56 .Pp
57 Unless otherwise specified, four servers for
58 .Tn UDP
59 transport are started.
60 .Pp
61 The following options are available:
62 .Bl -tag -width Ds
63 .It Fl r
64 Register the
65 .Tn NFS
66 service with
67 .Xr portmap 8
68 without creating any servers.
69 This option can be used along with the
70 .Fl u
71 or
72 .Fl t
73 options to re-register NFS if the portmap server is restarted.
74 .It Fl n
75 Specifies how many servers to create.
76 .It Fl h Ar bindip
77 Specifies which IP address or hostname to bind to on the local host.
78 This option is recommended when a host has multiple interfaces.
79 Multiple
80 .Fl h
81 options may be specified.
82 .It Fl a
83 Specifies that nfsd should bind to the wildcard IP address.
84 This is the default if no
85 .Fl h
86 options are given.  It may also be specified in addition to any
87 .Fl h
88 options given.  Note that NFS/UDP does not operate properly when
89 bound to the wildcard IP address whether you use -a or do not use -h.
90 .It Fl t
91 Serve
92 .Tn TCP NFS
93 clients.
94 .It Fl u
95 Serve
96 .Tn UDP NFS
97 clients.
98 .El
99 .Pp
100 For example,
101 .Dq Li "nfsd -u -t -n 6"
102 serves
103 .Tn UDP
104 and
105 .Tn TCP
106 transports using six daemons.
107 .Pp
108 A server should run enough daemons to handle
109 the maximum level of concurrency from its clients,
110 typically four to six.
111 .Pp
112 .Nm Nfsd
113 listens for service requests at the port indicated in the
114 .Tn NFS
115 server specification; see
116 .%T "Network File System Protocol Specification" ,
117 RFC1094 and
118 .%T "NFS: Network File System Version 3 Protocol Specification" .
119 .Pp
120 If
121 .Nm
122 detects that
123 .Tn NFS
124 is not loaded in the running kernel, it will attempt
125 to load a loadable kernel module containing
126 .Tn NFS
127 support using
128 .Xr kldload 8
129 by way of
130 .Xr vfsload 3 .
131 If this fails, or no
132 .Tn NFS
133 KLD is available,
134 .Nm
135 will exit with an error.
136 .Pp
137 If
138 .Nm
139 is to be run on a host with multiple interfaces or interface aliases, use
140 of the
141 .Fl h
142 option is recommended.  If you do not use the option NFS may not respond to
143 UDP packets from the same IP address they were sent to.  Use of this option
144 is also recommended when securing NFS exports on a firewalling machine such
145 that the NFS sockets can only be accessed by the inside interface.
146 .Nm Ipfw
147 would then be used to block nfs-related packets that come in on the outside
148 interface.
149 .Pp
150 .Nm
151 has to be terminated with
152 .Dv SIGUSR1
153 and cannot be killed with
154 .Dv SIGTERM
155 or
156 .Dv SIGQUIT .
157 .Nm
158 needs to ignore these signals in order to stay alive as long
159 as possible during a shutdown, otherwise loopback mounts will
160 not be able to unmount.
161 If you have to kill
162 .Nm
163 just do a
164 .Dq Li "kill -USR1 <PID of master nfsd>"
165 .Pp
166 The
167 .Nm
168 utility exits 0 on success, and >0 if an error occurs.
169 .Sh SEE ALSO
170 .Xr nfsstat 1 ,
171 .Xr nfssvc 2 ,
172 .Xr kldload 8 ,
173 .Xr mountd 8 ,
174 .Xr nfsiod 8 ,
175 .Xr portmap 8 ,
176 .Xr ipfw 8
177 .Sh HISTORY
178 The
179 .Nm
180 utility first appeared in
181 .Bx 4.4 .