1cups-browsed.conf(5) cups-browsed.conf(5)
2
3
4
6 cups-browsed.conf - server configuration file for cups-browsed
7
9 The cups-browsed.conf file configures the cups-browsed daemon. It is
10 normally located in the /etc/cups directory. Each line in the file can
11 be a configuration directive, a blank line, or a comment. Comment lines
12 start with the # character.
13
15 The "CacheDir" directive determines where cups-browsed should save
16 information about the print queues it had generated when shutting down,
17 like whether one of these queues was the default printer, or default
18 option settings of the queues.
19
20 CacheDir /var/cache/cups
21
22 With "LogDir" can be defined where cups-browsed creates its debug log
23 file (if "DebugLogging file" is set).
24
25 LogDir /var/log/cups
26
27 The "DebugLogging" directive determines how should debug logging be
28 done. Into the file /var/log/cups/cups-browsed_log ("file"), to stderr
29 ("stderr"), or not at all ("none").
30
31 DebugLogging file
32 DebugLogging stderr
33 DebugLogging file stderr
34 DebugLogging none
35
36 Only browse remote printers (via DNS-SD or CUPS browsing) from selected
37 servers using the "BrowseAllow", "BrowseDeny", and "BrowseOrder" direc‐
38 tives
39
40 This serves for restricting the choice of printers in print dialogs to
41 trusted servers or to reduce the number of listed printers in the print
42 dialogs to a more user-friendly amount in large networks with very many
43 shared printers.
44
45 This only filters the selection of remote printers for which cups-
46 browsed creates local queues. If the print dialog uses other mechanisms
47 to list remote printers as for example direct DNS-SD access, cups-
48 browsed has no influence. cups-browsed also does not prevent the user
49 from manually accessing non-listed printers.
50
51 "BrowseAllow": Accept printers from these hosts or networks. If there
52 are only "BrowseAllow" lines and no "BrowseOrder" and/or "BrowseDeny"
53 lines, only servers matching at last one "BrowseAllow" line are
54 accepted.
55
56 "BrowseDeny": Deny printers from these hosts or networks. If there are
57 only "BrowseDeny" lines and no "BrowseOrder" and/or "BrowseAllow"
58 lines, all servers NOT matching any of the "BrowseDeny" lines are
59 accepted.
60
61 "BrowseOrder": Determine the order in which "BrowseAllow" and
62 "BrowseDeny" lines are applied. With "BrowseOrder Deny,Allow" in the
63 beginning all servers are accepted, then the "BrowseDeny" lines are
64 applied to exclude unwished servers or networks and after that the
65 "BrowseAllow" lines to re-include servers or networks. With "Browse‐
66 Order Allow,Deny" we start with denying all servers, then applying the
67 "BrowseAllow" lines and afterwards the "BrowseDeny" lines.
68
69 Default for "BrowseOrder" is "Deny.Allow" if there are both "BrowseAl‐
70 low" and "BrowseDeny" lines.
71
72 If there are no "Browse..." lines at all, all servers are accepted.
73
74 BrowseAllow All
75 BrowseAllow 192.168.7.20
76 BrowseAllow 192.168.7.0/24
77 BrowseAllow 192.168.7.0/255.255.255.0
78
79 BrowseDeny All
80 BrowseDeny 192.168.1.13
81 BrowseDeny 192.168.3.0/24
82 BrowseDeny 192.168.3.0/255.255.255.0
83
84 BrowseOrder Deny,Allow
85 BrowseOrder Allow,Deny
86
87 Filtering of remote printers by other properties than IP addresses of
88 their servers
89
90 Often the desired selection of printers cannot be reached by only tak‐
91 ing into account the IP addresses of the servers. For these cases there
92 is the BrowseFilter directive to filter by most of the known properties
93 of the printer.
94
95 By default there is no BrowseFilter line meaning that no filtering is
96 applied.
97
98 To do filtering one can supply one or more BrowseFilter directives like
99 this:
100
101 BrowseFilter [NOT] [EXACT] <FIELD> [<VALUE>]
102
103 The BrowseFilter directive always starts with the word "BrowseFilter"
104 and it must at least contain the name of the data field (<FIELD>) of
105 the printer's properties to which it should apply.
106
107 Available field names are:
108
109 name: Name of the local print queue to be created
110 host: Host name of the remote print server
111 port: Port through which the printer is accessed on the server
112 service: DNS/SD service name of the remote printer
113 domain: Domain of the remote print server
114
115 Also all field names in the TXT records of DNS-SD-advertised printers
116 are valid, like "color", "duplex", "pdl", ... If the field name of the
117 filter rule does not exist for the printer, the rule is skipped.
118
119 The optional <VALUE> field is either the exact value (when the option
120 EXACT is supplied) or a regular expression (Run "man 7 regex" in a ter‐
121 minal window) to be matched with the data field.
122
123 If no <VALUE> filed is supplied, rules with field names of the TXT
124 record are considered for boolean matching (true/false) of boolean
125 field (like duplex, which can have the values "T" for true and "F" for
126 false).
127
128 If the option NOT is supplied, the filter rule is fulfilled if the reg‐
129 ular expression or the exact value DOES NOT match the content of the
130 data field. In a boolean rule (without <VALUE>) the rule matches false.
131
132 Regular expressions are always considered case-insensitive and extended
133 POSIX regular expressions. Field names and options (NOT, EXACT) are all
134 evaluated case-insensitive. If there is an error in a regular expres‐
135 sion, the BrowseFilter line gets ignored.
136
137 Especially to note is that supplying any simple string consisting of
138 only letters, numbers, spaces, and some basic special characters as a
139 regular expression matches if it is contained somewhere in the data
140 field.
141
142 If there is more than one BrowseFilter directive, ALL the directives
143 need to be fulfilled for the remote printer to be accepted. If one is
144 not fulfilled, the printer will get ignored.
145
146 Examples:
147
148 Rules for standard data items which are supplied with any remote
149 printer advertised via DNS-SD:
150
151 Print queue name must contain "hum_res_", this matches "hum_res_mono"
152 or "hum_res_color" but also "old_hum_res_mono":
153
154 BrowseFilter name hum_res_
155
156 This matches if the remote host name contains "printserver", like
157 "printserver.local", "printserver2.example.com", "newprintserver":
158
159 BrowseFilter host printserver
160
161 This matches all ports with 631 int its number, for example 631, 8631,
162 10631,...:
163
164 BrowseFilter port 631
165
166 This rule matches if the DNS-SD service name contains "@ printserver":
167
168 Browsefilter service @ printserver
169
170 Matches all domains with "local" in their names, not only "local" but
171 also things like "printlocally.com":
172
173 BrowseFilter domain local
174
175 Examples for rules applying to items of the TXT record:
176
177 This rule selects PostScript printers, as the "PDL" field in the TXT
178 record contains "postscript" then. This includes also remote CUPS
179 queues which accept PostScript, independent of whether the physical
180 printer behind the CUPS queue accepts PostScript or not.
181
182 BrowseFilter pdl postscript
183
184 Color printers usually contain a "Color" entry set to "T" (for true) in
185 the TXT record. This rule selects them:
186
187 BrowseFilter color
188
189 This is a similar rule to select only duplex (automatic double-sided
190 printing) printers:
191
192 BrowseFilter duplex
193
194 Rules with the NOT option:
195
196 This rule EXCLUDES printers from all hosts containing "financial" in
197 their names, nice to get rid of the 100s of printers of the financial
198 department:
199
200 BrowseFilter NOT host financial
201
202 Get only monochrome printers ("Color" set to "F", meaning false, in the
203 TXT record):
204
205 BrowseFilter NOT color
206
207 Rules with more advanced use of regular expressions:
208
209 Only queue names which BEGIN WITH "hum_res_" are accepted now, so we
210 still get "hum_res_mono" or "hum_res_color" but not "old_hum_res_mono"
211 any more:
212
213 BrowseFilter name ^hum_res_
214
215 Server names is accepted if it contains "print_server" OR "graph‐
216 ics_dep_server":
217
218 BrowseFilter host print_server|graphics_dep_server
219
220 "printserver1", "printserver2", and "printserver3", nothing else:
221
222 BrowseFilter host ^printserver[1-3]$
223
224 Printers understanding at least one of PostScript, PCL, or PDF:
225
226 BrowseFilter pdl postscript|pcl|pdf
227
228 Examples for the EXACT option:
229
230 Only printers from "printserver.local" are accepted:
231
232 BrowseFilter EXACT host printserver.local
233
234 Printers from all servers except "prinserver2.local" are accepted:
235
236 BrowseFilter NOT EXACT host prinserver2.local
237
238 The BrowsePoll directive polls a server for available printers once
239 every 60 seconds. Multiple BrowsePoll directives can be specified to
240 poll multiple servers. The default port to connect to is 631. Browse‐
241 Poll works independently of whether CUPS browsing is activated in
242 BrowseRemoteProtocols.
243
244 BrowsePoll 192.168.7.20
245 BrowsePoll 192.168.7.65:631
246 BrowsePoll host.example.com:631
247
248
249 The BrowseLocalProtocols directive specifies the protocols to use when
250 advertising local shared printers on the network. The default is
251 "none". Control of advertising of local shared printers using dnssd is
252 done in /etc/cups/cupsd.conf.
253
254 BrowseLocalProtocols none
255 BrowseLocalProtocols CUPS
256
257
258 The BrowseRemoteProtocols directive specifies the protocols to use when
259 finding remote shared printers on the network. Multiple protocols can
260 be specified by separating them with spaces. The default is "dnssd
261 cups".
262
263 BrowseRemoteProtocols none
264 BrowseRemoteProtocols CUPS dnssd
265 BrowseRemoteProtocols CUPS
266 BrowseRemoteProtocols dnssd
267 BrowseRemoteProtocols ldap
268
269 The BrowseProtocols directive specifies the protocols to use when find‐
270 ing remote shared printers on the network and advertising local shared
271 printers. "dnssd" and "ldap" are ignored for BrowseLocalProtocols.
272 Multiple protocols can be specified by separating them with spaces. The
273 default is "none" for BrowseLocalProtocols and "dnssd cups" for
274 BrowseRemoteProtocols.
275
276 BrowseProtocols none
277 BrowseProtocols CUPS dnssd
278 BrowseProtocols CUPS
279 BrowseProtocols dnssd
280 BrowseProtocols ldap
281
282 The configuration for the LDAP browsing mode define where the LDAP
283 search should be performed. If built with an LDAP library that supports
284 TLS, the path to the server's certificate, or to a certificates store,
285 can be specified. The optional filter allows the LDAP search to be
286 more specific, and is used in addition to the hardcoded filter (object‐
287 class=cupsPrinter).
288
289 BrowseLDAPBindDN cn=cups-browsed,dc=domain,dc=tld
290 BrowseLDAPCACertFile /path/to/server/certificate.pem
291 BrowseLDAPDN ou=printers,dc=domain,dc=tld
292 BrowseLDAPFilter (printerLocation=/Office 1/*)
293 BrowseLDAPPassword s3cret
294 BrowseLDAPServer ldaps://ldap.domain.tld
295
296 The DomainSocket directive specifies the domain socket through which
297 the locally running CUPS daemon is accessed. If not specified the stan‐
298 dard domain socket of CUPS is used. Use this if you have specified an
299 alternative domain socket for CUPS via a Listen directive in
300 /etc/cups/cupsd.conf. If cups-browsed is not able to access the local
301 CUPS daemon via a domain socket it accesses it via localhost. "None" or
302 "Off" lets cups-browsed not use CUPS' domain socket.
303
304 DomainSocket /var/run/cups/cups.sock
305 DomainSocket None
306 DomainSocket Off
307
308 Set HTTP timeout (in seconds) for requests sent to local/remote
309 resources Note that too short timeouts can make services getting missed
310 when they are present and operations be unneccesarily repeated and too
311 long timeouts can make operations take too long when the server does
312 not respond.
313
314 HttpLocalTimeout 5
315 HttpRemoteTimeout 10
316
317 The interval between browsing/broadcasting cycles, local and/or remote,
318 can be adjusted with the BrowseInterval directive.
319
320 BrowseInterval 60
321
322 The BrowseTimeout directive determines the amount of time that brows‐
323 ing-related operations are allowed to take in seconds. Notably, adding
324 or removing one printer queue is considered as one operation. The time‐
325 out applies to each one of those operations. Especially queues discov‐
326 ered by CUPS broadcasts will be removed after this timeout if no fur‐
327 ther broadcast from the server happens.
328
329 BrowseTimeout 300
330
331 Set OnlyUnsupportedByCUPS to "Yes" will make cups-browsed not create
332 local queues for remote printers for which CUPS creates queues by
333 itself. These printers are printers advertised via DNS-SD and doing
334 CUPS-supported (currently PWG Raster and Apple Raster) driverless
335 printing, including remote CUPS queues. Queues for other printers (like
336 for legacy PostScript/PCL printers) are always created (depending on
337 the other configuration settings of cups-browsed).
338
339 With OnlyUnsupportedByCUPS set to "No", cups-browsed creates queues for
340 all printers which it supports, including printers for which CUPS would
341 create queues by itself. Temporary queues created by CUPS will get
342 overwritten. This way it is assured that any extra functionality of
343 cups-browsed will apply to these queues. As queues created by cups-
344 browsed are permanent CUPS queues this setting is also recommended if
345 applications/print dialogs which do not support temporary CUPS queues
346 are installed. This setting is the default.
347
348 OnlyUnsupportedByCUPS Yes
349
350 With UseCUPSGeneratedPPDs set to "Yes" cups-browsed creates queues for
351 IPP printers with PPDs generated by the PPD generator of CUPS and not
352 with the one of cups-browsed. So any new development in CUPS' PPD gen‐
353 erator gets available. As CUPS' PPD generator is not directly accessi‐
354 ble, we need to make CUPS generate a temporary print queue with the
355 desired PPD. Therefore we can only use these PPDs when our queue
356 replaces a temporary CUPS queue, meaning that the queue is for a
357 printer on which CUPS supports driverless printing (IPP 2.x, PDLs: PDF,
358 PWG Raster, and/or Apple Raster) and that its name is the same as CUPS
359 uses for the temporary queue ("LocalQueueNamingIPPPrinter DNS-SD" must
360 be set). The directive applies only to IPP printers, not to remote CUPS
361 queues, to not break clustering. Setting this directive to "No" lets
362 cups-browsed generate the PPD file. Default setting is "Yes".
363
364 UseCUPSGeneratedPPDs No
365
366 With the directives LocalQueueNamingRemoteCUPS and LocalQueueNamingIPP‐
367 Printer you can determine how the names for local queues generated by
368 cups-browsed are generated, separately for remote CUPS printers and IPP
369 printers.
370
371 "DNS-SD" (the default in both cases) bases the naming on the service
372 name of the printer's advertised DNS-SD record. This is exactly the
373 same naming scheme as CUPS uses for its temporary queues, so the local
374 queue from cups-browsed prevents CUPS from listing and creating an
375 additional queue. As DNS-SD service names have to be unique, queue
376 names of printers from different servers will also be unique and so
377 there is no automatic clustering for load-balanced printing.
378
379 "MakeModel" bases the queue name on the printer's manufacturer and
380 model names. This scheme cups-browsed used formerly for IPP printers.
381
382 "RemoteName" is only available for remote CUPS queues and uses the name
383 of the queue on the remote CUPS server as the local queue's name. This
384 makes printers on different CUPS servers with equal queue names auto‐
385 matically forming a load-balancing cluster as CUPS did formerly (CUPS
386 1.5.x and older) with CUPS-broadcasted remote printers. This scheme
387 cups-browsed used formerly for remote CUPS printers.
388
389 LocalQueueNamingRemoteCUPS DNS-SD
390 LocalQueueNamingRemoteCUPS MakeModel
391 LocalQueueNamingRemoteCUPS RemoteName
392 LocalQueueNamingIPPPrinter DNS-SD
393 LocalQueueNamingIPPPrinter MakeModel
394
395 Set IPBasedDeviceURIs to "Yes" if cups-browsed should create its local
396 queues with device URIs with the IP addresses instead of the host names
397 of the remote servers. This mode is there for any problems with host
398 name resolution in the network, especially also if avahi-daemon is only
399 run for printer discovery and already stopped while still printing. By
400 default this mode is turned off, meaning that we use URIs with host
401 names.
402
403 If you prefer IPv4 or IPv6 IP addresses in the URIs, you can set
404 IPBasedDeviceURIs to "IPv4" to only get IPv4 IP addresses or IPBasedDe‐
405 viceURIs to "IPv6" to only get IPv6 IP addresses.
406
407 IPBasedDeviceURIs No
408 IPBasedDeviceURIs Yes
409 IPBasedDeviceURIs IPv4
410 IPBasedDeviceURIs IPv6
411
412 Set CreateRemoteRawPrinterQueues to "Yes" to let cups-browsed also cre‐
413 ate local queues pointing to remote raw CUPS queues. Normally, only
414 queues pointing to remote queues with PPD/driver are created as we do
415 not use drivers on the client side, but in some cases accessing a
416 remote raw queue can make sense, for example if the queue forwards the
417 jobs by a special backend like Tea4CUPS.
418
419 CreateRemoteRawPrinterQueues Yes
420
421 cups-browsed by default creates local print queues for each shared CUPS
422 print queue which it discovers on remote machines in the local net‐
423 work(s). Set CreateRemoteCUPSPrinterQueues to "No" if you do not want
424 cups-browsed to do this. For example you can set cups-browsed to only
425 create queues for IPP network printers setting CreateIPPPrinterQueues
426 not to "No" and CreateRemoteCUPSPrinterQueues to "No".
427
428 CreateRemoteCUPSPrinterQueues No
429
430 Set CreateIPPPrinterQueues to "All" to let cups-browsed discover IPP
431 network printers (native printers, not CUPS queues) with known page
432 description languages (PWG Raster, PDF, PostScript, PCL XL, PCL 5c/e)
433 in the local network and auto-create print queues for them.
434
435 Set CreateIPPPrinterQueues to "Everywhere" to let cups-browsed discover
436 IPP Everywhere printers in the local network (native printers, not CUPS
437 queues) and auto-create print queues for them.
438
439 Set CreateIPPPrinterQueues to "AppleRaster" to let cups-browsed dis‐
440 cover Apple Raster printers in the local network (native printers, not
441 CUPS queues) and auto-create print queues for them.
442
443 Set CreateIPPPrinterQueues to "Driverless" to let cups-browsed discover
444 printers designed for driverless use (currently IPP Everywhere and
445 Apple Raster) in the local network (native printers, not CUPS queues)
446 and auto-create print queues for them.
447
448 Set CreateIPPPrinterQueues to "LocalOnly" to auto-create print queues
449 only for local printers made available as IPP printers. These are for
450 example IPP-over-USB printers, made available via ippusbxd(8). This is
451 the default.
452
453 Set CreateIPPPrinterQueues to "No" to not auto-create print queues for
454 IPP network printers.
455
456 If queues with PPD file are created (see IPPPrinterQueueType directive
457 below) the PPDs are auto-generated by cups-browsed based on properties
458 of the printer polled via IPP. In case of missing information, info
459 from the Bonjour record is used asd as last mean default values.
460
461 If queues without PPD (see IPPPrinterQueueType directive below) are
462 created clients have to IPP-poll the capabilities of the printer and
463 send option settings as standard IPP attributes. Then we do not poll
464 the capabilities by ourselves to not wake up the printer from power-
465 saving mode when creating the queues. Jobs have to be sent in one of
466 PDF, PWG Raster, or JPEG format. Other formats are not accepted.
467
468 This functionality is primarily for mobile devices running CUPS to not
469 need a printer setup tool nor a collection of printer drivers and PPDs.
470
471 CreateIPPPrinterQueues No
472 CreateIPPPrinterQueues LocalOnly
473 CreateIPPPrinterQueues Everywhere
474 CreateIPPPrinterQueues AppleRaster
475 CreateIPPPrinterQueues Everywhere AppleRaster
476 CreateIPPPrinterQueues Driverless
477 CreateIPPPrinterQueues All
478
479 If cups-browsed is automatically creating print queues for native IPP
480 network printers ("CreateIPPPrinterQueues Yes"), the type of queue to
481 be created can be selected by the "IPPPrinterQueueType" directive. The
482 "PPD" (default) setting makes queues with PPD file being created. With
483 "Interface" or "NoPPD" the queue is created with a System V interface
484 script (Not supported with CUPS 2.2.x or later). "Auto" is for backward
485 compatibility and also lets queues with PPD get created.
486
487 IPPPrinterQueueType PPD
488 IPPPrinterQueueType NoPPD
489 IPPPrinterQueueType Interface
490 IPPPrinterQueueType Auto
491
492 The NewIPPPrinterQueuesShared directive determines whether a print
493 queue for a newly discovered IPP network printer (not remote CUPS
494 queue) will be shared to the local network or not. This is only valid
495 for newly discovered printers. For printers discovered in an earlier
496 cups-browsed session, cups-browsed will remember whether the printer
497 was shared, so changes by the user get conserved. Default is not to
498 share newly discovered IPP printers.
499
500 NewIPPPrinterQueuesShared Yes
501
502 If there is more than one remote CUPS printer whose local queue would
503 get the same name and AutoClustering is set to "Yes" (the default) only
504 one local queue is created which makes up a load-balancing cluster of
505 the remote printers which would get this queue name (implicit class).
506 This means that when several jobs are sent to this queue they get dis‐
507 tributed between the printers, using the method chosen by the LoadBal‐
508 ancing directive.
509
510 Note that the forming of clusters depends on the naming scheme for
511 local queues created by cups-browsed. If you have set LocalQueueNamin‐
512 gRemoteCUPS to "DNSSD" you will not get automatic clustering as the
513 DNS-SD service names are always unique. With LocalQueueNamingRemoteCUPS
514 set to "RemoteName" local queues are named as the CUPS queues on the
515 remote servers are named and so equally named queues on different
516 servers get clustered (this is how CUPS did it in version 1.5.x or
517 older). LocalQueueNamingRemoteCUPS set to "MakeModel" makes remote
518 printers of the same model get clustered. Note that then a cluster can
519 contain more than one queue of the same server.
520
521 With AutoClustering set to "No", for each remote CUPS printer an indi‐
522 vidual local queue is created, and to avoid name clashes when using the
523 LocalQueueNamingRemoteCUPS settings "RemoteName" or "MakeModel"
524 "@<server name>" is added to the local queue name.
525
526 Only remote CUPS printers get clustered, not IPP network printers or
527 IPP-over-USB printers.
528
529 AutoClustering Yes
530 AutoClustering No
531
532 Load-balancing printer cluster formation can also be manually con‐
533 trolled by defining explicitly which remote CUPS printers should get
534 clustered together.
535
536 This is done by the "Cluster" directive:
537
538 Cluster <QUEUENAME>: <EXPRESSION1> <EXPRESSION2> ...
539 Cluster <QUEUENAME>
540
541 If no expressions are given, <QUEUENAME> is used as the first and only
542 expression for this cluster.
543
544 Discovered printers are matched against all the expressions of all
545 defined clusters. The first expression which matches the discovered
546 printer determines to which cluster it belongs. Note that this way a
547 printer can only belong to one cluster. Once matched, further cluster
548 definitions will not checked any more.
549
550 With the first printer matching a cluster's expression a local queue
551 with the name <QUEUENAME> is created. If more printers are discovered
552 and match this cluster, they join the cluster. Printing to this queue
553 prints to all these printers in a load-balancing manner, according to
554 to the setting of the LoadBalancing directive.
555
556 Each expression must be a string of characters without spaces. If spa‐
557 ces are needed, replace them by underscores ('_').
558
559 An expression can be matched in three ways:
560
561 1. By the name of the CUPS queue on the remote server
562 2. By make and model name of the remote printer
563 3. By the DNS-SD service name of the remote printer
564
565 Note that the matching is done case-insensitively and any group of non-
566 alphanumerical characters is replaced by a single underscore.
567
568 So if an expression is "HP_DeskJet_2540" and the remote server reports
569 "hp Deskjet-2540" the printer gets matched to this cluster.
570
571 If "AutoClustering" is not set to "No" both your manual cluster defini‐
572 tions will be followed and automatic clustering of equally-named remote
573 queues will be performed. If a printer matches in both categories the
574 match to the manually defined cluster has priority. Automatic cluster‐
575 ing of equally-named remote printers is not performed if there is a
576 manually defined cluster with this name (at least as the printers do
577 not match this cluster).
578
579 Examples:
580
581 To cluster all remote CUPS queues named "laserprinter" in your local
582 network but not cluster any other equally-named remote CUPS printers
583 use (Local queue will get named "laserprinter"):
584
585 AutoClustering No
586 Cluster laserprinter
587
588 To cluster all remote CUPS queues of HP LaserJet 4050 printers in a
589 local queue named "LJ4050":
590
591 Cluster LJ4050: HP_LaserJet_4050
592
593 As DNS-SD service names are unique in a network you can create a clus‐
594 ter from exactly specified printers (spaces replaced by underscors):
595
596 Cluster hrdep: oldlaser_@_hr-server1 newlaser_@_hr-server2
597
598 The LoadBalancing directive switches between two methods of handling
599 load balancing between equally-named remote queues which are repre‐
600 sented by one local print queue making up a cluster of them (implicit
601 class).
602
603 The two methods are:
604
605 Queuing of jobs on the client (LoadBalancing QueueOnClient):
606
607 Here we queue up the jobs on the client and regularly check the clus‐
608 tered remote print queues. If we find an idle queue, we pass on a job
609 to it.
610
611 This is also the method which CUPS uses for classes. Advantage is a
612 more even distribution of the job workload on the servers (especially
613 if the printing speed of the servers is very different), and if a
614 server fails, there are not several jobs stuck or lost. Disadvantage is
615 that if one takes the client (laptop, mobile phone, ...) out of the
616 local network, printing stops with the jobs waiting in the local queue.
617
618 Queuing of jobs on the servers (LoadBalancing QueueOnServers):
619
620 Here we check the number of jobs on each of the clustered remote print‐
621 ers and send an incoming job immediately to the remote printer with the
622 lowest amount of jobs in its queue. This way no jobs queue up locally,
623 all jobs which are waiting are waiting on one of the remote servers.
624
625 Not having jobs waiting locally has the advantage that we can take the
626 local machine from the network and all jobs get printed. Disadvantage
627 is that if a server with a full queue of jobs goes away, the jobs go
628 away, too.
629
630 Default is queuing the jobs on the client as this is what CUPS does
631 with classes.
632
633 LoadBalancing QueueOnClient
634 LoadBalancing QueueOnServers
635
636 With the DefaultOptions directive one or more option settings can be
637 defined to be applied to every print queue newly created by cups-
638 browsed. Each option is supplied as one supplies options with the "-o"
639 command line argument to the "lpadmin" command (Run "man lpadmin" for
640 more details). More than one option can be supplied separating the
641 options by spaces. By default no option settings are pre-defined.
642
643 Note that print queues which cups-browsed already created before remem‐
644 ber their previous settings and so these settings do not get applied.
645
646 DefaultOptions Option1=Value1 Option2=Value2 Option3 noOption4
647
648 The AutoShutdown directive specifies whether cups-browsed should auto‐
649 matically terminate when it has no local raw queues set up pointing to
650 any discovered remote printers or no jobs on such queues depending on
651 AutoShutdownOn setting (auto shutdown mode). Setting it to "On" acti‐
652 vates the auto-shutdown mode, setting it to "Off" deactivates it (the
653 default). The special mode "avahi" turns auto shutdown off while avahi-
654 daemon is running and on when avahi-daemon stops. This allows running
655 cups-browsed on-demand when avahi-daemon is run on-demand.
656
657 AutoShutdown Off
658 AutoShutdown On
659 AutoShutdown avahi
660
661 The AutoShutdownOn directive determines what event cups-browsed consid‐
662 ers as inactivity in auto shutdown mode. "NoQueues" (the default) means
663 that auto shutdown is initiated when there are no queues for discovered
664 remote printers generated by cups-browsed any more. "NoJobs" means that
665 all queues generated by cups-browsed are without jobs.
666
667 AutoShutdownOn NoQueues
668 AutoShutdownOn NoJobs
669
670 The AutoShutdownTimeout directive specifies after how many seconds
671 without local raw queues set up pointing to any discovered remote
672 printers or jobs on these queues cups-browsed should actually shut down
673 in auto shutdown mode. Default is 30 seconds, 0 means immediate shut‐
674 down.
675
676 AutoShutdownTimeout 20
677
678
680 cups-browsed(8)
681
682 /usr/share/doc/cups-browsed/README.gz
683
685 The authors of cups-browsed are listed in /usr/share/doc/cups-
686 browsed/AUTHORS.
687
688 This manual page was written for the Debian Project, but it may be used
689 by others.
690
691
692
693 29 June 2013 cups-browsed.conf(5)