Sync usage with man page.
[netbsd-mini2440.git] / share / man / man5 / rc.conf.5
blob12e49b80d2de56df46f79338f7697fe604f85cbf
1 .\"     $NetBSD: rc.conf.5,v 1.137 2009/09/30 18:17:22 apb Exp $
2 .\"
3 .\" Copyright (c) 1996 Matthew R. Green
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\"
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
20 .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
22 .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
23 .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" SUCH DAMAGE.
26 .\"
27 .\" Copyright (c) 1997 Curt J. Sampson
28 .\" Copyright (c) 1997 Michael W. Long
29 .\" Copyright (c) 1998-2009 The NetBSD Foundation, Inc.
30 .\" All rights reserved.
31 .\"
32 .\" This document is derived from works contributed to The NetBSD Foundation
33 .\" by Luke Mewburn.
34 .\"
35 .\" Redistribution and use in source and binary forms, with or without
36 .\" modification, are permitted provided that the following conditions
37 .\" are met:
38 .\" 1. Redistributions of source code must retain the above copyright
39 .\"    notice, this list of conditions and the following disclaimer.
40 .\" 2. Redistributions in binary form must reproduce the above copyright
41 .\"    notice, this list of conditions and the following disclaimer in the
42 .\"    documentation and/or other materials provided with the distribution.
43 .\" 3. The name of the author may not be used to endorse or promote products
44 .\"    derived from this software without specific prior written permission.
45 .\"
46 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
47 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
48 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
49 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
50 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
51 .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
52 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
53 .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
54 .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
55 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
56 .\" SUCH DAMAGE.
57 .\"
58 .Dd September 30, 2009
59 .Dt RC.CONF 5
60 .Os
61 .Sh NAME
62 .Nm rc.conf
63 .Nd system startup configuration file
64 .Sh DESCRIPTION
65 The
66 .Nm
67 file specifies which services are enabled during system startup by
68 the startup scripts invoked by
69 .Pa /etc/rc
70 (see
71 .Xr rc 8 ) ,
72 and the shutdown scripts invoked by
73 .Pa /etc/rc.shutdown .
74 The
75 .Nm
76 file is a shell script that is sourced by
77 .Xr rc 8 ,
78 meaning that
79 .Nm
80 must contain valid shell commands.
81 .Pp
82 Listed below are the standard
83 .Nm
84 variables that may be set, the values to which each may be set,
85 a brief description of what each variable does, and a reference to
86 relevant manual pages.
87 Third party packages may test for additional variables.
88 .Pp
89 By default,
90 .Nm
91 reads
92 .Pa /etc/defaults/rc.conf
93 (if it is readable)
94 to obtain default values for various variables, and the end-user
95 may override these by appending appropriate entries to the end of
96 .Nm .
97 .Pp
98 .Xr rc.d 8
99 scripts that use
100 .Ic load_rc_config
101 from
102 .Xr rc.subr 8
103 also support sourcing an optional end-user provided per-script override
104 file
105 .Pa /etc/rc.conf.d/ Ns Ar service ,
106 (where
107 .Ar service
108 is the contents of the
109 .Sy name
110 variable in the
111 .Xr rc.d 8
112 script).
113 This may contain variable overrides, including allowing the end-user
114 to override various
115 .Ic run_rc_command
116 .Xr rc.d 8
117 control variables, and thus changing the operation of the script
118 without requiring editing of the script.
119 .Ss Variable naming conventions and data types
120 Most variables are one of two types: enabling variables or flags
121 variables.
122 Enabling variables, such as
123 .Sy inetd ,
124 are generally named after the program or the system they enable,
125 and have boolean values (specified using
126 .Sq Ic YES ,
127 .Sq Ic TRUE ,
128 .Sq Ic ON
130 .Sq Ic 1
131 for true, and
132 .Sq Ic NO ,
133 .Sq Ic FALSE ,
134 .Sq Ic OFF
136 .Sq Ic 0
137 for false, with the values being case insensitive).
138 Flags variables, such as
139 .Sy inetd_flags
140 have the same name with "_flags" appended, and determine what
141 arguments are passed to the program if it is enabled.
143 If a variable that
144 .Xr rc 8
145 expects to be set is not set, or the value is not one of the allowed
146 values, a warning will be printed.
147 .Ss Overall control
148 .Bl -tag -width net_interfaces
149 .It Sy do_rcshutdown
150 Boolean value.
151 If false,
152 .Xr shutdown 8
153 will not run
154 .Pa /etc/rc.shutdown .
155 .It Sy rcshutdown_rcorder_flags
156 A string.
157 Extra arguments to the
158 .Xr rcorder 8
159 run by
160 .Pa /etc/rc.shutdown .
161 .It Sy rcshutdown_timeout
162 A number.
163 If non-blank, use this as the number of seconds to run a watchdog timer for
164 which will terminate
165 .Pa /etc/rc.shutdown
166 if the timer expires before the shutdown script completes.
167 .It Sy rc_configured
168 Boolean value.
169 If false then the system will drop into single-user mode during boot.
170 .It Sy rc_fast_and_loose
171 If set to a non-empty string,
172 each script in
173 .Pa /etc/rc.d
174 will be executed in the current shell rather than a sub shell.
175 This may be faster on slow machines that have an expensive
176 .Xr fork 2
177 operation.
178 .Bl -hang
179 .It Em Note :
180 Use this at your own risk!
181 A rogue command or script may inadvertently prevent boot to multiuser.
183 .It Sy rc_rcorder_flags
184 A string.
185 Extra arguments to the
186 .Xr rcorder 8
187 run by
188 .Pa /etc/rc .
189 .It Sy rc_directories
190 A string.
191 Space separated list of directories searched for rc scripts.
192 The default is
193 .Pa /etc/rc.d .
194 All directories in
195 .Ev rc_directories
196 must be located in the root filesystem, otherwise they will be silently
197 skipped.
198 .It Sy rc_silent
199 Boolean value.
200 If true then the usual output is suppressed, and
201 .Xr rc 8
202 invokes the command specified in the
203 .Va rc_silent_cmd
204 variable once for each line of suppressed output.
205 The default value of
206 .Va rc_silent
207 is set from the
208 .Dv AB_SILENT
209 flag in the kernel's
210 .Va boothowto
211 variable (see
212 .Xr boot 8 ,
213 .Xr reboot 2 ) .
214 .It Sy rc_silent_cmd
215 A command to be executed once per line of suppressed output, when
216 .Va rc_silent
217 is true.
218 The default value of
219 .Va rc_silent_cmd
221 .Dq twiddle ,
222 which will display a spinning symbol instead of each line of output.
223 Another useful value is
224 .Dq \&: ,
225 which will display nothing at all.
227 .Ss Basic network configuration
228 .Bl -tag -width net_interfaces
229 .It Sy defaultroute
230 A string.
231 Default IPv4 network route.
232 If empty or not set, then the contents of
233 .Pa /etc/mygate
234 (if it exists) are used.
235 .It Sy defaultroute6
236 A string.
237 Default IPv6 network route.
238 If empty or not set, then the contents of
239 .Pa /etc/mygate6
240 (if it exists) are used.
241 .It Sy domainname
242 A string.
243 .Tn NIS
244 (YP) domain of host.
245 If empty or not set, then the contents of
246 .Pa /etc/defaultdomain
247 (if it exists) are used.
248 .It Sy force_down_interfaces
249 A space separated list of interface names.
250 These interfaces will be configured down when going from multiuser to singleuser
251 mode or on system shutdown.
253 This is important for some stateful interfaces, for example PPP over ISDN
254 connections that cost money by connection time or PPPoE interfaces which
255 have no direct means of noticing
256 .Dq disconnect
257 events.
259 All active
260 .Xr pppoe 4
262 .Xr ippp 4
263 interfaces will be automatically added to this list.
264 .It Sy hostname
265 A string.
266 Name of host.
267 If empty or not set, then the contents of
268 .Pa /etc/myname
269 (if it exists) are used.
271 .Ss Boottime file-system and swap configuration
272 .Bl -tag -width net_interfaces
273 .It Sy critical_filesystems_local
274 A string.
275 File systems mounted very early in the system boot before networking
276 services are available.
277 Usually
278 .Pa /var
279 is part of this, because it is needed by services such as
280 .Xr dhclient 8
281 which may be required to get the network operational.
282 The default is
283 .Dq "OPTIONAL:/var" ,
284 where the
285 .Dq OPTIONAL:
286 prefix means that it's not an error if the file system is not
287 present in
288 .Xr fstab 5 .
289 .It Sy critical_filesystems_remote
290 A string.
291 File systems such as
292 .Pa /usr
293 that may require network services to be available to mount,
294 that must be available early in the system boot for general services to use.
295 The default is
296 .Dq "OPTIONAL:/usr" ,
297 where the
298 .Dq OPTIONAL:
299 prefix means that it's not an error if the file system is not
300 present in
301 .Xr fstab 5 .
302 .It Sy fsck_flags
303 A string.
304 A file system is checked with
305 .Xr fsck 8
306 during boot before mounting it.
307 This option may be used to override the default command-line options
308 passed to the
309 .Xr fsck 8
310 program.
312 When set to
313 .Fl y ,
314 .Xr fsck 8
315 assumes yes as the answer to all operator questions during file system checks.
316 This might be important with hosts where the administrator does not have
317 access to the console and an unsuccessful shutdown must not make the host
318 unbootable even if the file system checks would fail in preen mode.
319 .It Sy no_swap
320 Boolean value.
321 Should be true if you have deliberately configured your system with no swap.
322 If false and no swap devices are configured, the system will warn you.
323 .It Sy swapoff
324 Boolean value.
325 Remove block-type swap devices at shutdown time.
326 Useful if swapping onto RAIDframe devices.
328 .Ss One-time actions to perform or programs to run on boot-up
329 .Bl -tag -width net_interfaces
330 .It Sy accounting
331 Boolean value.
332 Enables process accounting with
333 .Xr accton 8 .
334 Requires
335 .Pa /var/account/acct
336 to exist.
337 .It Sy clear_tmp
338 Boolean value.
339 Clear /tmp after reboot.
340 .It Sy dmesg
341 Boolean value.
342 Create
343 .Pa /var/run/dmesg.boot
344 from the output of
345 .Xr dmesg 8 .
346 Passes
347 .Sy dmesg_flags .
348 .It Sy gpio
349 Boolean value.
350 Configure
351 .Xr gpio 4
352 devices .
354 .Xr gpio.conf 5 .
355 .It Sy mixerctl
356 Boolean value.
357 Read
358 .Xr mixerctl.conf 5
359 for how to set mixer values.
360 List in
361 .Sy mixerctl_mixers
362 the devices whose settings are to be saved at shutdown and
363 restored at start-up.
364 .It Sy newsyslog
365 Boolean value.
367 .Nm newsyslog
368 to trim logfiles before syslogd starts.
369 Intended for laptop users.
370 Passes
371 .Sy newsyslog_flags .
372 .It Sy per_user_tmp
373 Boolean value.
374 Enables a per-user
375 .Pa /tmp
376 directory.
377 .Sy per_user_tmp_dir
378 can be used to override the default location of the
379 .Dq real
380 temporary directories,
381 .Dq Pa /private/tmp .
382 .It Sy rndctl
383 Boolean value.
384 Runs the
385 .Xr rndctl 8
386 utility one or more times according to the specification in
387 .Sy rndctl_flags .
390 .Sy rndctl_flags
391 does not contain a semicolon
392 .Pq Ql \&;
393 then it is expected to contain zero or more flags,
394 followed by one or more device or type names.
396 .Xr rndctl 8
397 command will be executed once for each device or type name.
398 If the specified flags do not include any of
399 .Fl c , C , e ,
401 .Fl E ,
402 then the flags
403 .Fl c
405 .Fl e
406 are added, to specify that entropy from the relevant device or type
407 should be both collected and estimated.
408 If the specified flags do not include either of
409 .Fl d
411 .Fl t ,
412 then the flag
413 .Fl d
414 is added, to specify that the non-flag arguments are device names,
415 not type names.
417 .Sy rndctl_flags
418 may contain multiple semicolon-separated segments, in which each
419 segment contains flags and device or type names as described above.
420 This allows different flags to be associated with different
421 device or type names.
422 For example, given
423 .Li rndctl_flags="wd0 wd1; -t tty; -c -t net" ,
424 the following commands will be executed:
425 .Li "rndctl -c -e -d wd0" ;
426 .Li "rndctl -c -e -d wd1" ;
427 .Li "rndctl -c -e -t tty" ;
428 .Li "rndctl -c -t net" .
429 .It Sy savecore
430 Boolean value.
431 Runs the
432 .Xr savecore 8
433 utility.
434 Passes
435 .Sy savecore_flags .
436 The directory where crash dumps are stored is specified by
437 .Sy savecore_dir .
438 The default setting is
439 .Dq Pa /var/crash .
440 .It Sy tpctl
441 Boolean value.
443 .Xr tpctl 8
444 to calibrate touch panel device.
445 Passes
446 .Sy tpctl_flags .
447 .It Sy update_motd
448 Boolean value.
449 Updates the
451 version string in the
452 .Pa /etc/motd
453 file to reflect the version of the running kernel.
455 .Xr motd 5 .
456 .It Sy veriexec
457 Boolean value.
458 Load Veriexec fingerprints during startup.
459 Read
460 .Xr veriexecctl 8
461 for more information.
462 .It Sy virecover
463 Boolean value.
464 Send notification mail to users if any recoverable files exist in
465 .Pa /var/tmp/vi.recover .
466 Read
467 .Xr virecover 8
468 for more information.
470 .Ss System security setting
471 .Bl -tag -width net_interfaces
472 .It Sy securelevel
473 A number.
474 The system securelevel is set to the specified value early
475 in the boot process, before any external logins, or other programs
476 that run users job, are started.
477 If set to nothing, the default action is taken, as described in
478 .Xr init 8
480 .Xr secmodel_securelevel 9 ,
481 which contains definitive information about the system securelevel.
482 Note that setting
483 .Sy securelevel
484 to 0 in
486 will actually result in the system booting with securelevel set to 1, as
487 .Xr init 8
488 will raise the level when
489 .Xr rc 8
490 completes.
491 .It Sy permit_nonalpha
492 Allow passwords to include non-alpha characters, usually to allow
493 NIS/YP netgroups.
494 .It Sy veriexec_strict
495 A number.
496 Controls the strict level of Veriexec.
497 Level 0 is learning mode, used when building the signatures file.
498 It will only output messages but will not enforce anything.
499 Level 1 will only prevent access to files with a fingerprint
500 mismatch.
501 Level 2 will also deny writing to and removing of
502 monitored files, as well as enforce access type (as specified in
503 the signatures file).
504 Level 3 will take a step further and prevent
505 access to files that are not monitored.
506 .It Sy veriexec_verbose
507 A number.
508 Controls the verbosity of Veriexec.
509 Recommended operation is at level 0, verbose output (mostly used when
510 building the signatures file) is at level 1.
511 Level 2 is for debugging only and should not be used.
512 .It Sy veriexec_flags
513 A string.
514 Flags to pass to the
515 .Nm veriexecctl
516 command.
518 .Ss Networking startup
519 .Bl -tag -width net_interfaces
520 .It Sy altqd
521 Boolean value.
522 ALTQ configuration/monitoring daemon.
523 Passes
524 .Sy altqd_flags .
525 .It Sy auto_ifconfig
526 Boolean value.
527 Sets the
528 .Sy net_interfaces
529 variable (see below) to the output of
530 .Xr ifconfig 8
531 with the
532 .Dq Li -l
533 flag and suppresses warnings about interfaces in this list that
534 do not have an ifconfig file or variable.
535 .It Sy dhclient
536 Boolean value.
537 Set true to configure some or all network interfaces using
538 the ISC DHCP client.
539 If you set
540 .Sy dhclient
541 true, then
542 .Pa /var
543 must be in
544 .Sy critical_filesystems_local ,
546 .Pa /var
547 must be on the root file system,
548 or you must modify the
549 .Sy dhclient_flags
550 variable to direct the DHCP client to store the leases file
551 in some other directory on the root file system.
552 You must not provide ifconfig information or ifaliases
553 information for any interface that is to be configured using the DHCP client.
554 Interface aliases can be set up in the DHCP client configuration
555 file if needed - see
556 .Xr dhclient.conf 5
557 for details.
559 Passes
560 .Sy dhclient_flags
561 to the DHCP client.
563 .Xr dhclient 8
564 for complete documentation.
565 If you wish to configure all broadcast
566 network interfaces using the DHCP client, you can leave this blank.
567 To configure only specific interfaces, name the interfaces to be configured
568 on the command line.
570 If you must run the DHCP client before mounting critical file systems,
571 then you should specify an alternate location for the DHCP client's lease
572 file in the
573 .Sy dhclient_flags
574 variable - for example, "-lf /tmp/dhclient.leases".
575 .It Sy dhcpcd_flags
576 Additional arguments to pass to
577 .Xr dhcpcd 8
578 when requesting configuration via
579 .Sy ifconfig_xxN
581 .Pa /etc/ifconfig.xxN .
582 .It Sy flushroutes
583 Boolean value.
584 Flushes the route table on networking startup.
585 Useful when coming up to multiuser mode after going down to
586 single-user mode.
587 .It Sy hostapd
588 Boolean value.
589 Runs
590 .Xr hostapd 8 ,
591 the authenticator for IEEE 802.11 networks.
592 .It Sy ifaliases_*
593 A string.
594 List of
595 .Sq Em "address netmask"
596 pairs to configure additional network addresses for the given
597 configured interface
598 .Dq *
599 (e.g.
600 .Sy ifaliases_le0 ) .
602 .Em netmask
604 .Dq - ,
605 then use the default netmask for the interface.
607 .Sy ifaliases_*
608 covers limited cases only and considered unrecommended.
609 We recommend using
610 .Sy ifconfig_nnX
611 variables or
612 .Pa /etc/ifconfig.xxN
613 files with multiple lines instead.
614 .It Sy ifwatchd
615 Boolean value.
616 Monitor dynamic interfaces and perform actions upon address changes.
617 Passes
618 .Sy ifwatchd_flags .
619 .It Sy ip6mode
620 A string.
621 An IPv6 node can be a router
622 .Pq nodes that forward packet for others
623 or a host
624 .Pq nodes that do not forward .
625 A host can be autoconfigured
626 based on the information advertised by adjacent IPv6 routers.
627 By setting
628 .Sy ip6mode
630 .Dq Li router ,
631 .Dq Li host ,
633 .Dq Li autohost ,
634 you can configure your node as a router,
635 a non-autoconfigured host, or an autoconfigured host.
636 Invalid values will be ignored, and the node will be configured as
637 a non-autoconfigured host.
638 You may want to check
639 .Sy rtsol
641 .Sy rtsold
642 as well, if you set the variable to
643 .Dq Li autohost .
644 .It Sy ip6uniquelocal
645 Boolean value.
647 .Sy ip6mode
648 is equal to
649 .Dq Li router ,
651 .Sy ip6uniquelocal
652 is false,
653 a reject route will be installed on boot to avoid misconfiguration relating
654 to unique-local addresses.
656 .Sy ip6uniquelocal
657 is true, the reject route won't be installed.
658 .It Sy ipfilter
659 Boolean value.
660 Runs
661 .Xr ipf 8
662 to load in packet filter specifications from
663 .Pa /etc/ipf.conf
664 at network boot time, before any interfaces are configured.
665 Passes
666 .Sy ipfilter_flags .
668 .Xr ipf.conf 5 .
669 .It Sy ipfs
670 Boolean value.
671 Runs
672 .Xr ipfs 8
673 to save and restore information for ipnat and ipfilter state tables.
674 The information is stored in
675 .Pa /var/db/ipf/ipstate.ipf
677 .Pa /var/db/ipf/ipnat.ipf .
678 Passes
679 .Sy ipfs_flags .
680 .It Sy ipmon
681 Boolean value.
682 Runs
683 .Xr ipmon 8
684 to read
685 .Xr ipf 8
686 packet log information and log it to a file or the system log.
687 Passes
688 .Sy ipmon_flags .
689 .It Sy ipmon_flags
690 A string.
691 Specifies arguments to supply to
692 .Xr ipmon 8 .
693 Defaults to
694 .Dq Li -ns .
695 A typical example would be
696 .Dq Fl nD Pa /var/log/ipflog
697 to have
698 .Xr ipmon 8
699 log directly to a file bypassing
700 .Xr syslogd 8 .
701 If the
702 .Dq -D
703 argument is used, remember to modify
704 .Pa /etc/newsyslog.conf
705 accordingly; for example:
706 .Bd -literal
707 /var/log/ipflog  640  10  100  *  Z  /var/run/ipmon.pid
709 .It Sy ipnat
710 Boolean value.
711 Runs
712 .Xr ipnat 8
713 to load in the IP network address translation (NAT) rules from
714 .Pa /etc/ipnat.conf
715 at network boot time, before any interfaces are configured.
717 .Xr ipnat.conf 5 .
718 .It Sy ipsec
719 Boolean value.
720 Runs
721 .Xr setkey 8
722 to load in IPsec manual keys and policies from
723 .Pa /etc/ipsec.conf
724 at network boot time, before any interfaces are configured.
725 .It Sy net_interfaces
726 A string.
727 The list of network interfaces to be configured at boot time.
728 For each interface "xxN", the system first looks for ifconfig
729 parameters in the variable
730 .Sy ifconfig_xxN ,
731 and then in the file
732 .Pa /etc/ifconfig.xxN .
734 .Sy auto_ifconfig
735 is false, and neither the variable nor the file is found,
736 a warning is printed.
737 Information in either the variable or the file is parsed identically,
738 except that, if an
739 .Sy ifconfig_xxN
740 variable contains a single line with embedded semicolons,
741 then the value is split into multiple lines prior to further parsing,
742 treating the semicolon as a line separator.
743 One common case it to set
744 .Sy ifconfig_xxN Ns Li \&= Ns Qq dhcp ,
745 which will cause
746 .Xr dhcpcd 8
747 to be started for the interface.
748 Another common case it to set the
749 .Sy ifconfig_xxN
750 variable to a set of arguments to be passed to an
751 .Xr ifconfig 8
752 command after the interface name.
753 Refer to
754 .Xr ifconfig.if 5
755 for more details on
756 .Pa /etc/ifconfig.xxN
757 files, and note that the information there also applies to
758 .Sy ifconfig_xxN
759 variables (after the variables are split into lines).
760 .It Sy ntpdate
761 Boolean value.
762 Runs
763 .Xr ntpdate 8
764 to set the system time from one of the hosts in
765 .Sy ntpdate_hosts .
767 .Sy ntpdate_hosts
768 is empty, it will attempt to find a list of hosts in
769 .Pa /etc/ntp.conf .
770 Passes
771 .Sy ntpdate_flags .
772 .It Sy pf
773 Boolean value.
774 Enable
775 .Xr pf 4
776 at network boot time:
777 Load the initial configuration
778 .Xr pf.boot.conf 5
779 before the network is up.
780 After the network has been configured, then load the final ruleset
781 .Xr pf.conf 5 .
782 .It Sy pf_rules
783 A string.
784 The path of the
785 .Xr pf.conf 5
786 ruleset that will be used when loading the final ruleset.
787 .It Sy pflogd
788 Boolean value.
790 .Xr pflogd 8
791 for dumping packet filter logging information to a file.
792 .It Sy ppp_peers
793 A string.
795 .Sy ppp_peers
796 is not empty, then
797 .Pa /etc/rc.d/ppp
798 will check each word in
799 .Sy ppp_peers
800 for a corresponding ppp configuration file in
801 .Pa /etc/ppp/peers
802 and will call
803 .Xr pppd 8
804 with the
805 .Dq call Sy peer
806 option.
807 .It Sy racoon
808 Boolean value.
809 Runs
810 .Xr racoon 8 ,
811 the IKE (ISAKMP/Oakley) key management daemon.
812 .It Sy rtsol
813 Boolean value.
815 .Xr rtsol 8 ,
816 router solicitation command for IPv6 hosts.
817 On nomadic hosts like notebook computers, you may want to enable
818 .Sy rtsold
819 as well.
820 Passes
821 .Sy rtsol_flags .
822 This is only for autoconfigured IPv6 hosts, so set
823 .Sy ip6mode
825 .Dq Li autohost
826 if you use it.
827 .It Sy wpa_supplicant
828 Boolean value.
830 .Xr wpa_supplicant 8 ,
831 WPA/802.11i Supplicant for wireless network devices.
832 If you set
833 .Sy wpa_suplicant
834 true, then
835 .Pa /usr
836 must be in
837 .Sy critical_filesystems_local ,
839 .Pa /usr
840 must be on the root file system.
842 .Ss Daemons required by other daemons
843 .Bl -tag -width net_interfaces
844 .It Sy inetd
845 Boolean value.
846 Runs the
847 .Xr inetd 8
848 daemon to start network server processes (as listed in
849 .Pa /etc/inetd.conf )
850 as necessary.
851 Passes
852 .Sy inetd_flags .
854 .Dq Li -l
855 flag turns on libwrap connection logging.
856 .It Sy rpcbind
857 Boolean value.
859 .Xr rpcbind 8
860 daemon is required for any
861 .Xr rpc 3
862 services.
863 These include NFS,
864 .Tn NIS ,
865 .Xr rpc.bootparamd 8 ,
866 .Xr rpc.rstatd 8 ,
867 .Xr rpc.rusersd 8 ,
869 .Xr rpc.rwalld 8 .
870 Passes
871 .Sy rpcbind_flags .
873 .Ss Commonly used daemons
874 .Bl -tag -width net_interfaces
875 .It Sy cron
876 Boolean value.
878 .Xr cron 8 .
879 .It Sy httpd
880 Boolean value.
881 Runs the
882 .Xr httpd 8
883 daemon and passes
884 .Sy httpd_flags .
885 .It Sy httpd_wwwdir
886 A string.
888 .Xr httpd 8
889 WWW root directory.
890 Used only if
891 .Sy httpd
892 is true.
893 The default setting is
894 .Dq Pa /var/www .
895 .It Sy httpd_wwwuser
896 A string.
897 If non-blank and
898 .Sy httpd
899 is true, run
900 .Xr httpd 8
901 and cause it to switch to the specified user after initialization.
902 It is preferred to
903 .Sy httpd_user
904 because
905 .Xr httpd 8
906 is requiring extra privileges to start listening on default port 80.
907 The default setting is
908 .Dq Dv _httpd .
909 .It Sy lpd
910 Boolean value.
911 Runs
912 .Xr lpd 8
913 and passes
914 .Sy lpd_flags .
916 .Dq Li -l
917 flag will turn on extra logging.
918 .It Sy named
919 Boolean value.
920 Runs
921 .Xr named 8
922 and passes
923 .Sy named_flags .
924 .It Sy named_chrootdir
925 A string.
926 If non-blank and
927 .Sy named
928 is true, run
929 .Xr named 8
930 as the unprivileged user and group
931 .Sq named ,
932 .Xr chroot 2 Ns ed
934 .Sy named_chrootdir .
935 .Sy named_chrootdir Ns Pa /var/run/log
936 will be added to the list of log sockets that
937 .Xr syslogd 8
938 listens to.
939 .It Sy ntpd
940 Boolean value.
941 Runs
942 .Xr ntpd 8
943 and passes
944 .Sy ntpd_flags .
945 .It Sy ntpd_chrootdir
946 A string.
947 If non-blank and
948 .Sy ntpd
949 is true, run
950 .Xr ntpd 8
951 as the unprivileged user and group
952 .Sq ntpd ,
953 .Xr chroot 2 Ns ed
955 .Sy ntpd_chrootdir .
956 .Sy ntpd_chrootdir Ns Pa /var/run/log
957 will be added to the list of log sockets that
958 .Xr syslogd 8
959 listens to.
960 This option requires that the kernel has
961 .Dl pseudo-device clockctl
962 compiled in, and that
963 .Pa /dev/clockctl
964 is present.
965 .It Sy postfix
966 Boolean value.
967 Starts
968 .Xr postfix 1
969 mail system.
970 .It Sy sshd
971 Boolean value.
972 Runs
973 .Xr sshd 8
974 and passes
975 .Sy sshd_flags .
976 .It Sy syslogd
977 Boolean value.
978 Runs
979 .Xr syslogd 8
980 and passes
981 .Sy syslogd_flags .
982 .It Sy timed
983 Boolean value.
984 Runs
985 .Xr timed 8
986 and passes
987 .Sy timed_flags .
989 .Dq Li -M
990 option allows
991 .Xr timed 8
992 to be a master time source as well as a slave.
993 If you are also running
994 .Xr ntpd 8 ,
995 only one machine running both should have the
996 .Dq Li -M
997 flag given to
998 .Xr timed 8 .
1000 .Ss Routing daemons
1001 .Bl -tag -width net_interfaces
1002 .It Sy mrouted
1003 Boolean value.
1004 Runs
1005 .Xr mrouted 8 ,
1006 the DVMRP multicast routing protocol daemon.
1007 Passes
1008 .Sy mrouted_flags .
1009 .It Sy route6d
1010 Boolean value.
1011 Runs
1012 .Xr route6d 8 ,
1013 the RIPng routing protocol daemon for IPv6.
1014 Passes
1015 .Sy route6d_flags .
1016 .It Sy routed
1017 Boolean value.
1018 Runs
1019 .Xr routed 8 ,
1020 the RIP routing protocol daemon.
1021 Passes
1022 .Sy routed_flags .
1023 .\" This should be false
1024 .\" if
1025 .\" .Sy gated
1026 .\" is true.
1027 .It Sy rtsold
1028 Boolean value.
1029 Runs
1030 .Xr rtsold 8 ,
1031 the IPv6 router solicitation daemon.
1032 .Xr rtsold 8
1033 periodically transmits router solicitation packets
1034 to find IPv6 routers on the network.
1035 This configuration is mainly for nomadic hosts like notebook computers.
1036 Stationary hosts should work fine with just
1037 .Sy rtsol .
1038 Passes
1039 .Sy rtsold_flags .
1040 This is only for autoconfigured IPv6 hosts, so set
1041 .Sy ip6mode
1043 .Dq Li autohost
1044 if you use it.
1046 .Ss Daemons used to boot other hosts over a network
1047 .Bl -tag -width net_interfaces
1048 .It Sy bootparamd
1049 Boolean value.
1050 Runs
1051 .Xr bootparamd 8 ,
1052 the boot parameter server, with
1053 .Sy bootparamd_flags
1054 as options.
1055 Used to boot
1058 .Tn "SunOS 4.x"
1059 systems.
1060 .It Sy dhcpd
1061 Boolean value.
1062 Runs
1063 .Xr dhcpd 8 ,
1064 the Dynamic Host Configuration Protocol (DHCP) daemon,
1065 for assigning IP addresses to hosts and passing boot information.
1066 Passes
1067 .Sy dhcpd_flags .
1068 .It Sy dhcrelay
1069 Boolean value.
1070 Runs
1071 .Xr dhcrelay 8 .
1072 Passes
1073 .Sy dhcrelay_flags .
1074 .It Sy mopd
1075 Boolean value.
1076 Runs
1077 .Xr mopd 8 ,
1079 .Tn DEC
1080 .Tn MOP
1081 protocol daemon; used for booting
1082 .Tn VAX
1083 and other
1084 .Tn DEC
1085 machines.
1086 Passes
1087 .Sy mopd_flags .
1088 .It Sy ndbootd
1089 Boolean value.
1090 Runs
1091 .Xr ndbootd 8 ,
1092 the Sun Network Disk (ND) Protocol server.
1093 Passes
1094 .Sy ndbootd_flags .
1095 .It Sy rarpd
1096 Boolean value.
1097 Runs
1098 .Xr rarpd 8 ,
1099 the reverse ARP daemon, often used to boot
1101 and Sun workstations.
1102 Passes
1103 .Sy rarpd_flags .
1104 .It Sy rbootd
1105 Boolean value.
1106 Runs
1107 .Xr rbootd 8 ,
1109 .Tn HP
1110 boot protocol daemon; used for booting
1111 .Tn HP
1112 workstations.
1113 Passes
1114 .Sy rbootd_flags .
1115 .It Sy rtadvd
1116 Boolean value.
1117 Runs
1118 .Xr rtadvd 8 ,
1119 the IPv6 router advertisement daemon, which is used to advertise
1120 information about the subnet to IPv6 end hosts.
1121 Passes
1122 .Sy rtadvd_flags .
1123 This is only for IPv6 routers, so set
1124 .Sy ip6mode
1126 .Dq Li router
1127 if you use it.
1129 .Ss X Window System daemons
1130 .Bl -tag -width net_interfaces
1131 .It Sy xdm
1132 Boolean value.
1133 Runs the
1134 .Xr xdm 1
1135 X display manager.
1136 These X daemons are available only with the optional X distribution of
1137 .Nx .
1138 .It Sy xfs
1139 Boolean value.
1140 Runs the
1141 .Xr xfs 1
1142 X11 font server, which supplies local X font files to X terminals.
1144 .Ss NIS (YP) daemons
1145 .Bl -tag -width net_interfaces
1146 .It Sy ypbind
1147 Boolean value.
1148 Runs
1149 .Xr ypbind 8 ,
1150 which lets
1151 .Tn NIS
1152 (YP) clients use information from a
1153 .Tn NIS
1154 server.
1155 Passes
1156 .Sy ypbind_flags .
1157 .It Sy yppasswdd
1158 Boolean value.
1159 Runs
1160 .Xr yppasswdd 8 ,
1161 which allows remote
1162 .Tn NIS
1163 users to update password on master server.
1164 Passes
1165 .Sy yppasswdd_flags .
1166 .It Sy ypserv
1167 Boolean value.
1168 Runs
1169 .Xr ypserv 8 ,
1171 .Tn NIS
1172 (YP) server for distributing information from certain files in
1173 .Pa /etc .
1174 Passes
1175 .Sy ypserv_flags .
1177 .Dq Li -d
1178 flag causes it to use DNS for lookups in
1179 .Pa /etc/hosts
1180 that fail.
1182 .Ss NFS daemons and parameters
1183 .Bl -tag -width net_interfaces
1184 .It Sy amd
1185 Boolean value.
1186 Runs
1187 .Xr amd 8 ,
1188 the automounter daemon, which automatically mounts NFS file systems
1189 whenever a file or directory within that file system is accessed.
1190 Passes
1191 .Sy amd_flags .
1192 .It Sy amd_dir
1193 A string.
1195 .Xr amd 8
1196 mount directory.
1197 Used only if
1198 .Sy amd
1199 is true.
1200 .It Sy lockd
1201 Boolean value.
1202 Runs
1203 .Xr rpc.lockd 8
1205 .Sy nfs_server
1206 and/or
1207 .Sy nfs_client
1208 are true.
1209 Passes
1210 .Sy lockd_flags .
1211 .It Sy mountd
1212 Boolean value.
1213 Runs
1214 .Xr mountd 8
1215 and passes
1216 .Sy mountd_flags .
1217 .It Sy nfs_client
1218 Boolean value.
1219 The number of local NFS asynchronous I/O server is now controlled via
1220 .Xr sysctl 8 .
1221 .It Sy nfs_server
1222 Boolean value.
1223 Sets up a host to be a NFS server by running
1224 .Xr nfsd 8
1225 and passing
1226 .Sy nfsd_flags .
1227 .It Sy statd
1228 Boolean value.
1229 Runs
1230 .Xr rpc.statd 8 ,
1231 a status monitoring daemon used when
1232 .Xr rpc.lockd 8
1233 is running, if
1234 .Sy nfs_server
1235 and/or
1236 .Sy nfs_client
1237 are true.
1238 Passes
1239 .Sy statd_flags .
1241 .Ss Bluetooth configuration and daemons
1242 .Bl -tag -width net_interfaces
1243 .It Sy btattach
1244 Boolean value.
1245 Attach serial bluetooth interfaces as listed in the configuration file
1246 .Pa /etc/bluetooth/btdevctl.conf .
1247 .It Sy btconfig
1248 Boolean value.
1249 Configure bluetooth devices.
1250 If the
1251 .Sy btconfig_devices
1252 variable below is not specified, all devices known to the system
1253 will be configured.
1254 For each device, configuration arguments are first looked for
1255 in the
1256 .Sy btconfig_{dev}
1257 variable, otherwise the value of the
1258 .Sy btconfig_args
1259 variable will be used, and if that is not specified the default string is
1260 .Sq enable .
1261 .It Sy btconfig_devices
1262 An optional space separated list of bluetooth devices to be configured at
1263 boot time.
1264 .It Sy btconfig_args
1265 An optional string, containing default arguments for bluetooth devices to
1266 be configured.
1267 .It Sy btdevctl
1268 Boolean value.
1269 Configure Bluetooth devices as listed in the configuration file
1270 .Pa /etc/bluetooth/btdevctl.conf .
1271 .It Sy bthcid
1272 Boolean value.
1273 Runs
1274 .Xr bthcid 8 ,
1275 the Bluetooth HCI daemon, which manages link keys and PIN codes for
1276 Bluetooth links.
1277 Passes
1278 .Sy bthcid_flags .
1279 .It Sy sdpd
1280 Boolean value.
1281 Runs the Service Discovery Profile daemon,
1282 .Xr sdpd 8 .
1283 Passes
1284 .Sy sdpd_flags .
1286 .Ss Other daemons
1287 .Bl -tag -width net_interfaces
1288 .It Sy isdnd
1289 Boolean value.
1290 Runs
1291 .Xr isdnd 8 ,
1292 the isdn4bsd ISDN connection management daemon.
1293 Passes
1294 .Sy isdnd_flags .
1295 .It Sy isdn_autoupdown
1296 Boolean value.
1297 Set all configured ISDN interfaces to
1298 .Dq up .
1300 .Sy isdn_interfaces
1301 is not blank, only the listed interfaces will be modified.
1302 Used only if
1303 .Sy isdnd
1304 is true.
1305 .It Sy kdc
1306 Boolean value.
1307 Runs the
1308 .Xr kdc 8
1309 Kerberos v4 and v5 server.
1310 This should be run on Kerberos master and slave servers.
1311 .It Sy rwhod
1312 Boolean value.
1313 Runs
1314 .Xr rwhod 8
1315 to support the
1316 .Xr rwho 1
1318 .Xr ruptime 1
1319 commands.
1321 .Ss Hardware daemons
1322 .Bl -tag -width net_interfaces
1323 .It Sy apmd
1324 Boolean value.
1325 Runs
1326 .Xr apmd 8
1327 and passes
1328 .Sy apmd_flags .
1329 .It Sy irdaattach
1330 Boolean value.
1331 Runs
1332 .Xr irdaattach 8
1333 and passes
1334 .Sy irdaattach_flags .
1335 .It Sy moused
1336 Boolean value.
1337 Runs
1338 .Xr moused 8 ,
1339 to pass serial mouse data to the wscons mouse mux.
1340 Passes
1341 .Sy moused_flags .
1342 .It Sy screenblank
1343 Boolean value.
1344 Runs
1345 .Xr screenblank 1
1346 and passes
1347 .Sy screenblank_flags .
1348 .It Sy wscons
1349 Boolean value.
1350 Configures the
1351 .Xr wscons 4
1352 console driver, from the configuration file
1353 .Pa /etc/wscons.conf .
1354 .It Sy wsmoused
1355 Boolean value.
1356 Runs
1357 .Xr wsmoused 8 ,
1358 to provide copy and paste text support in wscons displays.
1359 Passes
1360 .Sy wsmoused_flags .
1362 .Sh FILES
1363 .Bl -tag -width /etc/defaults/rc.conf -compact
1364 .It Pa /etc/rc.conf
1365 The file
1367 resides in
1368 .Pa /etc .
1369 .It Pa /etc/defaults/rc.conf
1370 Default settings for
1371 .Nm ,
1372 sourced by
1374 before the end-user configuration section.
1375 .It Pa /etc/rc.conf.d/ Ns Ar foo
1376 .Ar foo Ns No -specific
1378 overrides.
1380 .Sh SEE ALSO
1381 .Xr boot 8 ,
1382 .Xr rc 8 ,
1383 .Xr rc.d 8 ,
1384 .Xr rc.subr 8 ,
1385 .Xr rcorder 8
1386 .Sh HISTORY
1389 file appeared in
1390 .Nx 1.3 .