The principal location for system configuration information
is within /etc/rc.conf
. This file
contains a wide range of configuration information, principally
used at system startup to configure the system. Its name
directly implies this; it is configuration information for the
rc*
files.
An administrator should make entries in the
rc.conf
file to
override the default settings from
/etc/defaults/rc.conf
. The defaults file
should not be copied verbatim to /etc
- it
contains default values, not examples. All system-specific
changes should be made in the rc.conf
file itself.
A number of strategies may be applied in clustered
applications to separate site-wide configuration from
system-specific configuration in order to keep administration
overhead down. The recommended approach is to place site-wide
configuration into another file,
such as /etc/rc.conf.site
, and then include
this file into /etc/rc.conf
, which will
contain only system-specific information.
As rc.conf
is read by sh(1) it is
trivial to achieve this. For example:
rc.conf:
. /etc/rc.conf.site hostname="node15.example.com" network_interfaces="fxp0 lo0" ifconfig_fxp0="inet 10.1.1.1"
rc.conf.site:
defaultrouter="10.1.1.254" saver="daemon" blanktime="100"
The rc.conf.site
file can then be
distributed to every system using rsync
or a
similar program, while the rc.conf
file
remains unique.
Upgrading the system using sysinstall(8)
or make world
will not overwrite the
rc.conf
file, so system configuration information will not be lost.
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.