xref: /freebsd/usr.sbin/nfsd/nfsd.8 (revision 1670a1c2a47d10ecccd001970b859caf93cd3b6e)
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.\" 4. Neither the name of the University nor the names of its contributors
13.\"    may be used to endorse or promote products derived from this software
14.\"    without specific prior written permission.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.\"	@(#)nfsd.8	8.4 (Berkeley) 3/29/95
29.\" $FreeBSD$
30.\"
31.Dd March 29, 1995
32.Dt NFSD 8
33.Os
34.Sh NAME
35.Nm nfsd
36.Nd remote
37.Tn NFS
38server
39.Sh SYNOPSIS
40.Nm
41.Op Fl ardute
42.Op Fl n Ar num_servers
43.Op Fl h Ar bindip
44.Sh DESCRIPTION
45The
46.Nm
47utility runs on a server machine to service
48.Tn NFS
49requests from client machines.
50At least one
51.Nm
52must be running for a machine to operate as a server.
53.Pp
54Unless otherwise specified, four servers for
55.Tn UDP
56transport are started.
57.Pp
58The following options are available:
59.Bl -tag -width Ds
60.It Fl r
61Register the
62.Tn NFS
63service with
64.Xr rpcbind 8
65without creating any servers.
66This option can be used along with the
67.Fl u
68or
69.Fl t
70options to re-register NFS if the rpcbind server is restarted.
71.It Fl d
72Unregister the
73.Tn NFS
74service with
75.Xr rpcbind 8
76without creating any servers.
77.It Fl n
78Specifies how many servers to create.
79.It Fl h Ar bindip
80Specifies which IP address or hostname to bind to on the local host.
81This option is recommended when a host has multiple interfaces.
82Multiple
83.Fl h
84options may be specified.
85.It Fl a
86Specifies that nfsd should bind to the wildcard IP address.
87This is the default if no
88.Fl h
89options are given.
90It may also be specified in addition to any
91.Fl h
92options given.
93Note that NFS/UDP does not operate properly when
94bound to the wildcard IP address whether you use -a or do not use -h.
95.It Fl t
96Serve
97.Tn TCP NFS
98clients.
99.It Fl u
100Serve
101.Tn UDP NFS
102clients.
103.It Fl e
104Forces
105.Nm
106to try and start the experimental server that includes NFSv4 support in it.
107If this flag isn't specified, the experimental server will only be started
108if it is linked into the kernel and the regular one isn't.
109.br
110ie. The kernel is built with the following:
111.Bd -literal -offset indent -compact
112# options	NFSSERVER
113options		NFSD
114.Ed
115.El
116.Pp
117For example,
118.Dq Li "nfsd -u -t -n 6"
119serves
120.Tn UDP
121and
122.Tn TCP
123transports using six daemons.
124.Pp
125A server should run enough daemons to handle
126the maximum level of concurrency from its clients,
127typically four to six.
128.Pp
129The
130.Nm
131utility listens for service requests at the port indicated in the
132.Tn NFS
133server specification; see
134.%T "Network File System Protocol Specification" ,
135RFC1094,
136.%T "NFS: Network File System Version 3 Protocol Specification" ,
137RFC1813 and
138.%T "Network File System (NFS) Version 4 Protocol" ,
139RFC3530.
140.Pp
141If
142.Nm
143detects that
144.Tn NFS
145is not loaded in the running kernel, it will attempt
146to load a loadable kernel module containing
147.Tn NFS
148support using
149.Xr kldload 2 .
150If this fails, or no
151.Tn NFS
152KLD is available,
153.Nm
154will exit with an error.
155.Pp
156If
157.Nm
158is to be run on a host with multiple interfaces or interface aliases, use
159of the
160.Fl h
161option is recommended.
162If you do not use the option NFS may not respond to
163UDP packets from the same IP address they were sent to.
164Use of this option
165is also recommended when securing NFS exports on a firewalling machine such
166that the NFS sockets can only be accessed by the inside interface.
167The
168.Nm ipfw
169utility
170would then be used to block nfs-related packets that come in on the outside
171interface.
172.Pp
173The
174.Nm
175utility has to be terminated with
176.Dv SIGUSR1
177and cannot be killed with
178.Dv SIGTERM
179or
180.Dv SIGQUIT .
181The
182.Nm
183utility needs to ignore these signals in order to stay alive as long
184as possible during a shutdown, otherwise loopback mounts will
185not be able to unmount.
186If you have to kill
187.Nm
188just do a
189.Dq Li "kill -USR1 <PID of master nfsd>"
190.Sh EXIT STATUS
191.Ex -std
192.Sh SEE ALSO
193.Xr nfsstat 1 ,
194.Xr kldload 2 ,
195.Xr nfssvc 2 ,
196.Xr nfsv4 4 ,
197.Xr exports 5 ,
198.Xr gssd 8 ,
199.Xr ipfw 8 ,
200.Xr mountd 8 ,
201.Xr nfsiod 8 ,
202.Xr nfsrevoke 8 ,
203.Xr nfsuserd 8 ,
204.Xr rpcbind 8
205.Sh HISTORY
206The
207.Nm
208utility first appeared in
209.Bx 4.4 .
210.Sh BUGS
211If
212.Nm
213is started when
214.Xr gssd 8
215is not running, it will service AUTH_SYS requests only. To fix the problem
216you must kill
217.Nm
218and then restart it, after the
219.Xr gssd 8
220is running.
221