]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/man-cups-files.conf.html
Greatly simplify the man page handling.
[thirdparty/cups.git] / doc / help / man-cups-files.conf.html
CommitLineData
c277f98c 1<!DOCTYPE HTML>
94436c5a
MS
2<html>
3<!-- SECTION: Man Pages -->
4<head>
5 <link rel="stylesheet" type="text/css" href="../cups-printable.css">
6 <title>cups-files.conf(5)</title>
7</head>
8<body>
9<h1 class="title">cups-files.conf(5)</h1>
10<h2 class="title"><a name="NAME">Name</a></h2>
11cups-files.conf - file and directory configuration file for cups
12<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
651e0a22 13The <b>cups-files.conf</b> file configures the files and directories used by the CUPS scheduler,
87030afb 14<b>cupsd</b>(8).
651e0a22
MS
15It is normally located in the <i>/etc/cups</i> directory.
16<p>Each line in the file can be a configuration directive, a blank line, or a comment.
25d0c3fe
MS
17Configuration directives typically consist of a name and zero or more values separated by whitespace.
18The configuration directive name and values are case-insensitive.
651e0a22
MS
19Comment lines start with the # character.
20<h3><a name="DIRECTIVES">Directives</a></h3>
21The following directives are understood by
87030afb 22<b>cupsd</b>(8):
2909c66c 23<dl class="man">
37d9646b 24<dt><a name="AccessLog"></a><b>AccessLog</b>
25d0c3fe 25<dd style="margin-left: 5.0em"><dt><b>AccessLog </b><i>filename</i>
c59e07c6 26<dd style="margin-left: 5.0em"><dt><b>AccessLog stderr</b>
651e0a22
MS
27<dd style="margin-left: 5.0em"><dt><b>AccessLog syslog</b>
28<dd style="margin-left: 5.0em">Defines the access log filename.
651e0a22 29Specifying a blank filename disables access log generation.
c59e07c6 30The value "stderr" causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background.
25d0c3fe 31The value "syslog" causes log entries to be sent to the system log daemon.
651e0a22
MS
32The server name may be included in filenames using the string "%s", for example:
33<pre class="man">
34
35 AccessLog /var/log/cups/%s-access_log
36
37</pre>
25d0c3fe 38The default is "/var/log/cups/access_log".
7c7347a3
MS
39<dt><a name="CacheDir"></a><b>CacheDir </b><i>directory</i>
40<dd style="margin-left: 5.0em">Specifies the directory to use for long-lived temporary (cache) files.
41The default is "/var/spool/cups/cache" or "/var/cache/cups" depending on the platform.
37d9646b 42<dt><a name="ConfigFilePerm"></a><b>ConfigFilePerm </b><i>mode</i>
651e0a22 43<dd style="margin-left: 5.0em">Specifies the permissions for all configuration files that the scheduler writes.
8072030b 44The default is "0644" on macOS and "0640" on all other operating systems.
b4a8492a
MS
45</dl>
46<p><b>Note:</b> The permissions for the <i>printers.conf</i> file are currently masked to only allow access from the scheduler user (typically root).
651e0a22
MS
47This is done because printer device URIs sometimes contain sensitive authentication information that should not be generally known on the system.
48There is no way to disable this security feature.
b4a8492a 49<dl class="man">
47eb8d30
MS
50<dt><a name="CreateSelfSignedCerts"></a><b>CreateSelfSignedCerts yes</b>
51<dd style="margin-left: 5.0em"><dt><b>CreateSelfSignedCerts no</b>
52<dd style="margin-left: 5.0em">Specifies whether the scheduler automatically creates self-signed certificates for client connections using TLS.
53The default is yes.
37d9646b 54<dt><a name="DataDir"></a><b>DataDir </b><i>path</i>
25d0c3fe
MS
55<dd style="margin-left: 5.0em">Specifies the directory where data files can be found.
56The default is usually "/usr/share/cups".
37d9646b 57<dt><a name="DocumentRoot"></a><b>DocumentRoot </b><i>directory</i>
25d0c3fe
MS
58<dd style="margin-left: 5.0em">Specifies the root directory for the CUPS web interface content.
59The default is usually "/usr/share/doc/cups".
37d9646b 60<dt><a name="ErrorLog"></a><b>ErrorLog</b>
25d0c3fe 61<dd style="margin-left: 5.0em"><dt><b>ErrorLog </b><i>filename</i>
c59e07c6 62<dd style="margin-left: 5.0em"><dt><b>ErrorLog stderr</b>
651e0a22
MS
63<dd style="margin-left: 5.0em"><dt><b>ErrorLog syslog</b>
64<dd style="margin-left: 5.0em">Defines the error log filename.
651e0a22 65Specifying a blank filename disables error log generation.
c59e07c6 66The value "stderr" causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background.
25d0c3fe 67The value "syslog" causes log entries to be sent to the system log daemon.
651e0a22
MS
68The server name may be included in filenames using the string "%s", for example:
69<pre class="man">
70
71 ErrorLog /var/log/cups/%s-error_log
72
73</pre>
25d0c3fe 74The default is "/var/log/cups/error_log".
37d9646b 75<dt><a name="FatalErrors"></a><b>FatalErrors none</b>
25d0c3fe
MS
76<dd style="margin-left: 5.0em"><dt><b>FatalErrors all </b><i>-kind </i>[ ... <i>-kind </i>]
77<dd style="margin-left: 5.0em"><dt><b>FatalErrors </b><i>kind </i>[ ... <i>kind </i>]
651e0a22 78<dd style="margin-left: 5.0em">Specifies which errors are fatal, causing the scheduler to exit.
25d0c3fe 79The default is "config".
651e0a22
MS
80The <i>kind</i> strings are:
81<div style="margin-left: 0.0em;">
82<dl class="man">
83<dt><b>none</b>
84<dd style="margin-left: 5.0em">No errors are fatal.
85<dt><b>all</b>
86<dd style="margin-left: 5.0em">All of the errors below are fatal.
87<dt><b>browse</b>
88<dd style="margin-left: 5.0em">Browsing initialization errors are fatal, for example failed connections to the DNS-SD daemon.
89<dt><b>config</b>
90<dd style="margin-left: 5.0em">Configuration file syntax errors are fatal.
91<dt><b>listen</b>
92<dd style="margin-left: 5.0em">Listen or Port errors are fatal, except for IPv6 failures on the loopback or "any" addresses.
93<dt><b>log</b>
94<dd style="margin-left: 5.0em">Log file creation or write errors are fatal.
95<dt><b>permissions</b>
96<dd style="margin-left: 5.0em">Bad startup file permissions are fatal, for example shared TLS certificate and key files with world-read permissions.
97</div>
37d9646b 98<dt><a name="Group"></a><b>Group </b><i>group-name-or-number</i>
651e0a22 99<dd style="margin-left: 5.0em">Specifies the group name or ID that will be used when executing external programs.
25d0c3fe 100The default group is operating system specific but is usually "lp" or "nobody".
37d9646b 101<dt><a name="LogFilePerm"></a><b>LogFilePerm </b><i>mode</i>
25d0c3fe
MS
102<dd style="margin-left: 5.0em">Specifies the permissions of all log files that the scheduler writes.
103The default is "0644".
37d9646b 104<dt><a name="PageLog"></a><b>PageLog </b>[ <i>filename</i> ]
c59e07c6 105<dd style="margin-left: 5.0em"><dt><b>PageLog stderr</b>
651e0a22
MS
106<dd style="margin-left: 5.0em"><dt><b>PageLog syslog</b>
107<dd style="margin-left: 5.0em">Defines the page log filename.
c59e07c6 108The value "stderr" causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background.
651e0a22
MS
109The value "syslog" causes log entries to be sent to the system log daemon.
110Specifying a blank filename disables page log generation.
111The server name may be included in filenames using the string "%s", for example:
112<pre class="man">
113
114 PageLog /var/log/cups/%s-page_log
115
116</pre>
25d0c3fe 117The default is "/var/log/cups/page_log".
d5d64778
MS
118<dt><a name="PassEnv"></a><b>PassEnv </b><i>variable </i>[ ... <i>variable </i>]
119<dd style="margin-left: 5.0em">Passes the specified environment variable(s) to child processes.
120Note: the standard CUPS filter and backend environment variables cannot be overridden using this directive.
37d9646b 121<dt><a name="RemoteRoot"></a><b>RemoteRoot </b><i>username</i>
651e0a22 122<dd style="margin-left: 5.0em">Specifies the username that is associated with unauthenticated accesses by clients claiming to be the root user.
25d0c3fe 123The default is "remroot".
37d9646b 124<dt><a name="RequestRoot"></a><b>RequestRoot </b><i>directory</i>
651e0a22 125<dd style="margin-left: 5.0em">Specifies the directory that contains print jobs and other HTTP request data.
25d0c3fe 126The default is "/var/spool/cups".
e9f9e650 127<dt><a name="Sandboxing"></a><b>Sandboxing relaxed</b>
651e0a22
MS
128<dd style="margin-left: 5.0em"><dt><b>Sandboxing strict</b>
129<dd style="margin-left: 5.0em">Specifies the level of security sandboxing that is applied to print filters, backends, and other child processes of the scheduler.
130The default is "strict".
8072030b 131This directive is currently only used/supported on macOS.
37d9646b 132<dt><a name="ServerBin"></a><b>ServerBin </b><i>directory</i>
651e0a22 133<dd style="margin-left: 5.0em">Specifies the directory containing the backends, CGI programs, filters, helper programs, notifiers, and port monitors.
25d0c3fe 134The default is "/usr/lib/cups" or "/usr/libexec/cups" depending on the platform.
37d9646b 135<dt><a name="ServerKeychain"></a><b>ServerKeychain </b><i>path</i>
651e0a22 136<dd style="margin-left: 5.0em">Specifies the location of TLS certificates and private keys.
8072030b
MS
137The default is "/Library/Keychains/System.keychain" on macOS and "/etc/cups/ssl" on all other operating systems.
138macOS uses its keychain database to store certificates and keys while other platforms use separate files in the specified directory, *.crt for PEM-encoded certificates and *.key for PEM-encoded private keys.
37d9646b 139<dt><a name="ServerRoot"></a><b>ServerRoot </b><i>directory</i>
651e0a22 140<dd style="margin-left: 5.0em">Specifies the directory containing the server configuration files.
25d0c3fe 141The default is "/etc/cups".
d5d64778
MS
142<dt><a name="SetEnv"></a><b>SetEnv </b><i>variable value</i>
143<dd style="margin-left: 5.0em">Set the specified environment variable to be passed to child processes.
144Note: the standard CUPS filter and backend environment variables cannot be overridden using this directive.
7c7347a3
MS
145<dt><a name="StateDir"></a><b>StateDir </b><i>directory</i>
146<dd style="margin-left: 5.0em">Specifies the directory to use for PID and local certificate files.
147The default is "/var/run/cups" or "/etc/cups" depending on the platform.
37d9646b 148<dt><a name="SyncOnClose"></a><b>SyncOnClose Yes</b>
651e0a22
MS
149<dd style="margin-left: 5.0em"><dt><b>SyncOnClose No</b>
150<dd style="margin-left: 5.0em">Specifies whether the scheduler calls
151<b>fsync</b>(2)
25d0c3fe
MS
152after writing configuration or state files.
153The default is "No".
37d9646b 154<dt><a name="SystemGroup"></a><b>SystemGroup </b><i>group-name </i>[ ... <i>group-name</i> ]
651e0a22 155<dd style="margin-left: 5.0em">Specifies the group(s) to use for <i>@SYSTEM</i> group authentication.
25d0c3fe 156The default contains "admin", "lpadmin", "root", "sys", and/or "system".
37d9646b 157<dt><a name="TempDir"></a><b>TempDir </b><i>directory</i>
7c7347a3 158<dd style="margin-left: 5.0em">Specifies the directory where short-term temporary files are stored.
25d0c3fe 159The default is "/var/spool/cups/tmp".
37d9646b 160<dt><a name="User"></a><b>User </b><i>username</i>
651e0a22 161<dd style="margin-left: 5.0em">Specifies the user name or ID that is used when running external programs.
25d0c3fe 162The default is "lp".
2909c66c 163</dl>
7c7347a3
MS
164<h3><a name="DEPRECATED_DIRECTIVES">Deprecated Directives</a></h3>
165The following directives are deprecated and will be removed from a future version of CUPS:
166<dl class="man">
dda99de9
MS
167<dt><a name="FileDevice"></a><b>FileDevice Yes</b>
168<dd style="margin-left: 5.0em"><dt><b>FileDevice No</b>
169<dd style="margin-left: 5.0em">Specifies whether the file pseudo-device can be used for new printer queues.
170The URI "file:///dev/null" is always allowed.
171File devices cannot be used with "raw" print queues - a PPD file is required.
172The specified file is overwritten for every print job.
173Writing to directories is not supported.
7c7347a3
MS
174<dt><a name="FontPath"></a><b>FontPath </b><i>directory[:...:directoryN]</i>
175<dd style="margin-left: 5.0em">Specifies a colon separated list of directories where fonts can be found.
176On Linux the
177<b>font-config</b>(1)
178mechanism is used instead.
179On macOS the Font Book application manages system-installed fonts.
180<dt><a name="LPDConfigFile"></a><b> LPDConfigFile </b><i>filename</i>
181<dd style="margin-left: 5.0em">Specifies the LPD service configuration file to update.
182<dt><a name="Printcap"></a><b>Printcap </b><i>filename</i>
183<dd style="margin-left: 5.0em">Specifies a file that is filled with a list of local print queues.
184<dt><a name="PrintcapFormat"></a><b>PrintcapFormat bsd</b>
185<dd style="margin-left: 5.0em"><dt><b>PrintcapFormat plist</b>
186<dd style="margin-left: 5.0em"><dt><b>PrintcapFormat solaris</b>
187<dd style="margin-left: 5.0em">Specifies the format to use for the Printcap file.
188"bsd" is the historical LPD printcap file format.
189"plist" is the Apple plist file format.
190"solaris" is the historical Solaris LPD printcap file format.
191<dt><a name="SMBConfigFile"></a><b>SMBConfigFile </b><i>filename</i>
192<dd style="margin-left: 5.0em">Specifies the SMB service configuration file to update.
193</dl>
51c22b86
MS
194<h2 class="title"><a name="NOTES">Notes</a></h2>
195The scheduler MUST be restarted manually after making changes to the <b>cups-files.conf</b> file.
196On Linux this is typically done using the
197<b>systemctl</b>(8)
198command, while on macOS the
199<b>launchctl</b>(8)
200command is used instead.
94436c5a 201<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
87030afb
MS
202<b>classes.conf</b>(5),
203<b>cups</b>(1),
204<b>cupsd</b>(8),
205<b>cupsd.conf</b>(5),
206<b>mime.convs</b>(5),
207<b>mime.types</b>(5),
208<b>printers.conf</b>(5),
209<b>subscriptions.conf</b>(5),
651e0a22 210CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
94436c5a 211<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
87030afb 212Copyright &copy; 2007-2019 by Apple Inc.
94436c5a
MS
213
214</body>
215</html>