CONFIGD(8) System Manager's Manual CONFIGD(8)
NAME
configd – System Configuration Daemon
SYNOPSIS
configd [-bdv] [-B bundleID] [-V bundleID] [-t bundle-path]
DESCRIPTION
The configd daemon is responsible for many configuration aspects of the
local system. configd maintains data reflecting the desired and current
state of the system, provides notifications to applications when this
data changes, and hosts a number of configuration agents in the form of
loadable bundles.
Each configuration agent is responsible for a well-defined aspect of
configuration management. The agents look to one or more input sources
(preferences, low-level kernel events, configd notifications, etc) and,
through a set of policy modules, interacts with the system to establish
the desired operational configuration.
Access to the data maintained by configd is via the
SystemConfiguration.framework SCDynamicStore APIs.
OPTIONS
The command line options are as follows:
-b Don't actually load any bundles.
-B bundleID
Prevents the loading of the bundle with the specified bundleID.
-d Run configd in the foreground without forking. This is useful for
debugging.
-v Puts configd into verbose mode. Displays debugging information about
bundles as they are being loaded.
-V bundleID
Turns verbose mode on for the bundle with the specified bundleID.
-t bundle-path
Loads only the bundle specified by bundle-path.
BUNDLES
At the present time, the majority of the configuration agents (or
bundles) hosted by configd are used to establish and maintain the network
configuration. These agents include:
KernelEventMonitor
This bundle is responsible for monitoring kernel events and conveying
changes to the network state (e.g. link status) to other configuration
agents and interested applications.
InterfaceNamer
This bundle provides a name to each of the system's network interfaces.
The bundle queries the IOKit Registry for a list of network devices
attached to the system and gives them BSD style names such as "en0".
IPConfiguration
This agent is responsible for establishing and maintaining IPv4 and IPv6
addresses on the system. These addresses may be manually specified in
the network preferences or acquired using DHCP (or BOOTP), DHCPv6, and
RTADV.
IPMonitor
This agent is responsible for establishing and maintaining the primary
network service, the default route, the active DNS configuration, and the
active network proxies on the system.
LinkConfiguration
This agent is responsible for establishing and maintaining the media
type, media options, and MTU for ethernet interfaces.
PreferencesMonitor
This agent is responsible for conveying the network configuration
preferences specified by the administrator to the various configuration
agents (IPv4, IPv6, ...).
PPPController
This agent is responsible for establishing and maintaining PPP
connections on the system.
FILES
/System/Library/SystemConfiguration/
Directory of configd bundles
/Library/Preferences/SystemConfiguration/
Default directory for system configuration persistent store files.
.../preferences.plist Network configuration and computer/host
names
.../NetworkInterfaces.plist Network interface --> BSD interface
mappings
ERRORS
Log messages generated by configd and any configuration agents will are
sent to the system log daemon by syslog(3). The syslog facility used is
LOG_DAEMON. If the -d option is specified, log messages with written to
stdout (or stderr if the priority is greater than LOG_NOTICE).
SIGNALS
configd was designed to run without any intervention but if you insist on
sending a signal to the daemon then the following are available:
SIGHUP This signal, typically used to tell a daemon to reload its
configuration, is ignored (there is no configuration).
SIGTERM This signal initiates a "graceful" shutdown of the daemon.
SEE ALSO
scutil(8), scselect(8)
HISTORY
The configd daemon appeared in Mac OS X Public Beta.
NOTES
Unless started with the -d option, configd will register with launchd(8)
such that the daemon will be restarted in the event of a crash. This
registration will be removed during "graceful" shutdowns of the daemon.
This daemon and its current behavior may change without notice. Do not
rely on its existence or its behavior. Consider it an unsupported
command.
Mac OS X April 14, 2020 Mac OS X