]> git.saurik.com Git - apple/configd.git/blob - configd.tproj/configd.8
configd-1109.101.1.tar.gz
[apple/configd.git] / configd.tproj / configd.8
1 .\"
2 .\" @(#)configd.8
3 .\"
4 .Dd April 14, 2020
5 .Dt CONFIGD 8
6 .Os "Mac OS X"
7 .Sh NAME
8 .Nm configd
9 .Nd System Configuration Daemon
10 .Sh SYNOPSIS
11 .Nm
12 .Op Fl bdv
13 .Op Fl B Ar bundleID
14 .Op Fl V Ar bundleID
15 .Op Fl t Ar bundle-path
16 .Sh DESCRIPTION
17 The
18 .Nm
19 daemon
20 is responsible for many configuration aspects of the local system.
21 .Nm
22 maintains data reflecting the desired and current state of the system,
23 provides notifications to applications when this data changes,
24 and hosts a number of configuration agents in the form of loadable
25 bundles.
26 .Pp
27 Each configuration agent is responsible for a well-defined aspect
28 of configuration management. The agents look to one or more input
29 sources (preferences, low-level kernel events,
30 .Nm
31 notifications, etc) and, through
32 a set of policy modules, interacts with the system to establish
33 the desired operational configuration.
34 .Pp
35 Access to the data maintained by
36 .Nm
37 is via the SystemConfiguration.framework SCDynamicStore APIs.
38 .Sh OPTIONS
39 .Pp
40 The command line options are as follows:
41 .Bl -tag -width xx
42 .It Fl b
43 Don't actually load any bundles.
44 .It Fl B Ar bundleID
45 Prevents the loading of the bundle with the specified
46 .Ar bundleID .
47 .It Fl d
48 Run
49 .Nm
50 in the foreground without forking. This is useful for debugging.
51 .It Fl v
52 Puts
53 .Nm
54 into verbose mode. Displays debugging information about
55 bundles as they are being loaded.
56 .It Fl V Ar bundleID
57 Turns verbose mode on for the bundle with the specified
58 .Ar bundleID .
59 .It Fl t Ar bundle-path
60 Loads only the bundle specified by
61 .Ar bundle-path .
62 .El
63 .Sh BUNDLES
64 At the present time, the majority of the configuration agents (or bundles) hosted by
65 .Nm
66 are used to establish and maintain the network configuration.
67 These agents include:
68 .Pp
69 .Ss KernelEventMonitor
70 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.
71 .Ss InterfaceNamer
72 This bundle provides a name to each of the system's network interfaces. The bundle queries the
73 IOKit Registry for a list of network devices attached to the system and gives them BSD style names such as
74 .Qq en0 .
75 .Ss IPConfiguration
76 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.
77 .Ss IPMonitor
78 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.
79 .Ss LinkConfiguration
80 This agent is responsible for establishing and maintaining the media type, media options, and MTU for ethernet interfaces.
81 .Ss PreferencesMonitor
82 This agent is responsible for conveying the network configuration preferences specified by the administrator to the various configuration agents (IPv4, IPv6, ...).
83 .Ss PPPController
84 This agent is responsible for establishing and maintaining PPP connections on the system.
85 .Sh FILES
86 .Bl -tag -width xx
87 .It Pa /System/Library/SystemConfiguration/
88 Directory of
89 .Nm
90 bundles
91 .It Pa /Library/Preferences/SystemConfiguration/
92 Default directory for system configuration persistent store files.
93 .Bl -tag -width .../NetworkInterfaces.plist
94 .It Pa .../preferences.plist
95 Network configuration and computer/host names
96 .It Pa .../NetworkInterfaces.plist
97 Network interface --> BSD interface mappings
98 .El
99 .El
100 .Sh ERRORS
101 Log messages generated by
102 .Nm
103 and any configuration agents will are
104 sent to the system log daemon by
105 .Xr syslog 3 .
106 The syslog facility used is LOG_DAEMON.
107 If the
108 .Fl d
109 option is specified, log messages with written to stdout (or stderr if
110 the priority is greater than LOG_NOTICE).
111 .Sh SIGNALS
112 .Nm
113 was designed to run without any intervention but if you insist on sending a signal to the daemon then the following are available:
114 .Bl -tag -width SIGTERM
115 .It Dv SIGHUP
116 This signal, typically used to tell a daemon to reload its configuration, is ignored (there is no configuration).
117 .It Dv SIGTERM
118 This signal initiates a
119 .Qq graceful
120 shutdown of the daemon.
121 .El
122 .Sh SEE ALSO
123 ./".Xr SystemConfiguration.framework 3 ,
124 .Xr scutil 8 ,
125 .Xr scselect 8
126 ./".Xr launchd 8
127 .Sh HISTORY
128 The
129 .Nm
130 daemon appeared in Mac OS X Public Beta.
131 .Sh NOTES
132 Unless started with the
133 .Fl d
134 option,
135 .Nm
136 will register with
137 .Xr launchd 8
138 such that the daemon will be restarted in the event of a crash.
139 This registration will be removed during
140 .Qq graceful
141 shutdowns of the daemon.
142 .Pp
143 This daemon and its current behavior may change without notice. Do not rely
144 on its existence or its behavior. Consider it an unsupported command.