1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2 3<html> 4 <head> 5 <meta name="generator" content="HTML Tidy, see www.w3.org"> 6 <title>Configuration</title> 7 <meta name="GENERATOR" content= 8 "Modular DocBook HTML Stylesheet Version 1.7"> 9 <link rel="HOME" title=" LPRng Reference Manual" href= 10 "index.htm"> 11 <link rel="UP" title="Installation" href="installation.htm"> 12 <link rel="PREVIOUS" title="Daemon User and Daemon Group " 13 href="usergroup.htm"> 14 <link rel="NEXT" title= 15 "System and User Printcap, lpd.conf, and lpd.perms files " 16 href="requireconfig.htm"> 17 </head> 18 19 <body class="SECT1" bgcolor="#FFFFFF" text="#000000" link= 20 "#0000FF" vlink="#840084" alink="#0000FF"> 21 <div class="NAVHEADER"> 22 <table summary="Header navigation table" width="100%" border= 23 "0" cellpadding="0" cellspacing="0"> 24 <tr> 25 <th colspan="3" align="center">LPRng Reference Manual: 5 26 Sep 2003 (For LPRng-3.8.22)</th> 27 </tr> 28 29 <tr> 30 <td width="10%" align="left" valign="bottom"><a href= 31 "usergroup.htm" accesskey="P">Prev</a></td> 32 33 <td width="80%" align="center" valign="bottom">Chapter 2. 34 Installation</td> 35 36 <td width="10%" align="right" valign="bottom"><a href= 37 "requireconfig.htm" accesskey="N">Next</a></td> 38 </tr> 39 </table> 40 <hr align="LEFT" width="100%"> 41 </div> 42 43 <div class="SECT1"> 44 <h1 class="SECT1"><a name="AEN485">2.5. 45 Configuration</a></h1> 46 47 <p>The <b class="APPLICATION">LPRng</b> package consists of 48 the following executables and configuration files:</p> 49 50 <ul> 51 <li> 52 <p><b class="APPLICATION">lpd</b> - the <b class= 53 "APPLICATION">lpd</b> print server program</p> 54 </li> 55 56 <li> 57 <p><b class="APPLICATION">lpr</b>, <b class= 58 "APPLICATION">lpq</b>, <b class="APPLICATION">lprm</b>, 59 <b class="APPLICATION">lpc</b>, and <b class= 60 "APPLICATION">lpstat</b> client programs for printing, 61 status queries, job removal, server configuration, and 62 System V <b class="APPLICATION">lpstat</b> emulation 63 respectively.</p> 64 </li> 65 66 <li> 67 <p><tt class="FILENAME">printcap</tt> print queue 68 database file which is used by all the server and client 69 programs</p> 70 </li> 71 72 <li> 73 <p><tt class="FILENAME">lpd.conf</tt> <b class= 74 "APPLICATION">LPRng</b> configuration options which is 75 used by all the server and client programs</p> 76 </li> 77 78 <li> 79 <p><tt class="FILENAME">lpd.perms</tt> permission 80 information which is used by the <b class= 81 "APPLICATION">lpd</b> server to control user actions.</p> 82 </li> 83 </ul> 84 <br> 85 <br> 86 87 <p><b class="APPLICATION">LPRng</b> uses the <b class= 88 "APPLICATION">configure</b> script generated by the <a href= 89 "http://www.gnu.org" target="_top">GNU</a> <b class= 90 "APPLICATION">autoconf</b> utility to generate a set of <tt 91 class="FILENAME">Makefiles</tt>. These are used by <a href= 92 "http://www.gnu.org" target="_top">GNU</a> <b class= 93 "APPLICATION">make</b> to compile and install the <b class= 94 "APPLICATION">LPRng</b> software. The following <tt class= 95 "FILENAME">Makefile</tt> variables and values are set by <b 96 class="APPLICATION">configure</b> to specify the location of 97 the <b class="APPLICATION">LPRng</b> software:</p> 98 99 <div class="INFORMALTABLE"> 100 <a name="AEN525"></a> 101 102 <table border="1" class="CALSTABLE"> 103 <col> 104 <col> 105 <col> 106 <col> 107 108 <thead> 109 <tr> 110 <th>Configure Variable</th> 111 112 <th>Default Value</th> 113 114 <th>Expanded Default Value</th> 115 116 <th>Override</th> 117 </tr> 118 </thead> 119 120 <tbody> 121 <tr> 122 <td><var class="LITERAL">${prefix}</var></td> 123 124 <td><var class="LITERAL">/usr/local</var></td> 125 126 <td><var class="LITERAL">--prefix=PATH</var></td> 127 128 <td> </td> 129 </tr> 130 131 <tr> 132 <td><var class="LITERAL">${exec_prefix}</var></td> 133 134 <td><var class="LITERAL">${prefix}</var></td> 135 136 <td><var class="LITERAL">/usr/local</var></td> 137 138 <td><var class="LITERAL">--execprefix= 139 PATH</var></td> 140 </tr> 141 142 <tr> 143 <td><var class="LITERAL">${bindir}</var></td> 144 145 <td><var class= 146 "LITERAL">${exec_prefix}/bin</var></td> 147 148 <td><var class="LITERAL">/usr/local/bin</var></td> 149 150 <td><var class="LITERAL">--bindir= PATH</var></td> 151 </tr> 152 153 <tr> 154 <td><var class="LITERAL">${sbindir}</var></td> 155 156 <td><var class= 157 "LITERAL">${exec_prefix}/sbin</var></td> 158 159 <td><var class="LITERAL">/usr/local/sbin</var></td> 160 161 <td><var class="LITERAL">--sbindir= PATH</var></td> 162 </tr> 163 164 <tr> 165 <td><var class="LITERAL">${libexecdir}</var></td> 166 167 <td><var class="LITERAL">${exec_prefix} 168 /libexec</var></td> 169 170 <td><var class= 171 "LITERAL">/usr/local/libexec</var></td> 172 173 <td><var class="LITERAL">--libexecdir= 174 PATH</var></td> 175 </tr> 176 177 <tr> 178 <td><var class="LITERAL">${sysconfdir}</var></td> 179 180 <td><var class="LITERAL">${prefix}/etc</var></td> 181 182 <td><var class="LITERAL">/usr/local/etc</var></td> 183 184 <td><var class="LITERAL">--sysconfdir= 185 PATH</var></td> 186 </tr> 187 188 <tr> 189 <td><var class="LITERAL">${mandir}</var></td> 190 191 <td><var class="LITERAL">${prefix}/man</var></td> 192 193 <td><var class="LITERAL">/usr/local/man</var></td> 194 195 <td><var class="LITERAL">--mandir= PATH</var></td> 196 </tr> 197 </tbody> 198 </table> 199 </div> 200 201 <p>These are used to install the following files:</p> 202 203 <div class="INFORMALTABLE"> 204 <a name="AEN596"></a> 205 206 <table border="1" class="CALSTABLE"> 207 <col> 208 <col> 209 210 <thead> 211 <tr> 212 <th>Configure Variable</th> 213 214 <th>Files</th> 215 </tr> 216 </thead> 217 218 <tbody> 219 <tr> 220 <td><var class="LITERAL">${bindir}</var></td> 221 222 <td><var class="LITERAL">lpr, lprm, lpq, 223 lpstat</var></td> 224 </tr> 225 226 <tr> 227 <td><var class="LITERAL">${sbindir}</var></td> 228 229 <td><var class="LITERAL">lpc, checkpc, lpd</var></td> 230 </tr> 231 232 <tr> 233 <td><var class= 234 "LITERAL">${libexecdir}/filters</var></td> 235 236 <td><var class="LITERAL">lpf, pclbanner, psbanner, 237 lpbanner</var></td> 238 </tr> 239 240 <tr> 241 <td><var class="LITERAL">${sysconfdir}</var></td> 242 243 <td><var class="LITERAL">lpd.conf, lpd.perms, 244 printcap</var></td> 245 </tr> 246 247 <tr> 248 <td><var class= 249 "LITERAL">${mandir}/man[1-9]</var></td> 250 251 <td><var class="LITERAL">man pages</var></td> 252 </tr> 253 </tbody> 254 </table> 255 </div> 256 257 <p>You can set explicit values for the paths by using the 258 override <var class="LITERAL">--name=PATH</var>. For 259 example:</p> 260 261 <div class="INFORMALEXAMPLE"> 262 <a name="AEN630"></a> 263<pre class="SCREEN"> 264 ./configure --prefix=/usr --sysconfdir=/etc \ 265 --mandir=/usr/share/man 266</pre> 267 </div> 268 <br> 269 <br> 270 271 <div class="INFORMALTABLE"> 272 <a name="AEN632"></a> 273 274 <table border="1" class="CALSTABLE"> 275 <col> 276 <col> 277 <col> 278 279 <thead> 280 <tr> 281 <th>Variable</th> 282 283 <th>Value</th> 284 285 <th>Files</th> 286 </tr> 287 </thead> 288 289 <tbody> 290 <tr> 291 <td>${bindir}</td> 292 293 <td>/usr/bin</td> 294 295 <td>/usr/bin/{lpr,lprm,lpq,lpstat}</td> 296 </tr> 297 298 <tr> 299 <td>${sbindir}</td> 300 301 <td>/usr/sbin</td> 302 303 <td>/usr/sbin/{lpc,checkpc,lpd}</td> 304 </tr> 305 306 <tr> 307 <td>${libexecdir}/filters</td> 308 309 <td>/usr/libexec/filters</td> 310 311 <td>/usr/libexec/filters{lpf, pclbanner, psbanner, 312 lpbanner}</td> 313 </tr> 314 315 <tr> 316 <td>${sysconfdir}</td> 317 318 <td>/etc</td> 319 320 <td>/etc/{lpd.conf,lpd.perms,printcap}</td> 321 </tr> 322 323 <tr> 324 <td>${mandir}/man[1-9]</td> 325 326 <td>/usr/share/man</td> 327 328 <td>/usr/share/man/man[1-9]/{man pages}</td> 329 </tr> 330 </tbody> 331 </table> 332 </div> 333 334 <p>In addition to these standard <b class= 335 "APPLICATION">configure</b> options the following options 336 provided.</p> 337 338 <div class="VARIABLELIST"> 339 <dl> 340 <dt><var class="LITERAL">--disable-setuid</var></dt> 341 342 <dd> 343 <p>Install the executables without setuid ROOT 344 permissions. Non-setuid clients and programs are 345 inherently more secure than SETUID programs, and system 346 administrators would be well advised to install them 347 without SETUID root permissions. Please see <a href= 348 "setuid.htm">Security Considerations</a> for more 349 details about this option.</p> 350 </dd> 351 352 <dt><var class="LITERAL">--enable-priv_ports</var></dt> 353 354 <dd> 355 <p>Require connections to the <b class= 356 "APPLICATION">lpd</b> server to come from a privileged 357 port (range 1-1023). By default <b class= 358 "APPLICATION">LPRng</b> will allow connections from any 359 port. Please see <a href="setuid.htm">Security 360 Considerations</a> for more details about this 361 option.</p> 362 </dd> 363 364 <dt><var class= 365 "LITERAL">--disable-force_localhost</var></dt> 366 367 <dd> 368 <p>The default <b class="APPLICATION">LPRng</b> 369 configuration assumes that all printing will be done 370 via a <b class="APPLICATION">lpd</b> print spooler 371 running on the local host system. However, many larger 372 sites prefer that all users do their printing via a few 373 central servers, and do not run <b class= 374 "APPLICATION">lpd</b> servers on user systems. The <var 375 class="LITERAL">--disable-force_localhost</var> 376 configuration sets the default value of the <var class= 377 "LITERAL">force_localhost</var> value to <var class= 378 "LITERAL">false</var>, by default allowing the <b 379 class="APPLICATION">LPRng</b> clients to connect 380 directly to <b class="APPLICATION">lpd</b> servers on 381 remote hosts.</p> 382 </dd> 383 384 <dt><var class= 385 "LITERAL">--disable-require_configfiles</var></dt> 386 387 <dd> 388 <p>By default, the <b class="APPLICATION">lpr</b>, <b 389 class="APPLICATION">lpq</b>, <b class= 390 "APPLICATION">lprm</b>, and <b class= 391 "APPLICATION">lpc</b> clients require the <tt class= 392 "FILENAME">lpd.conf</tt> and <tt class= 393 "FILENAME">printcap</tt> files to be present on the 394 localhost. The <var class= 395 "LITERAL">--disable-require_configfiles</var> literal 396 removes this requirement.</p> 397 </dd> 398 399 <dt><var class="LITERAL">--enable-kerberos</var></dt> 400 401 <dd> 402 <p>Include support for Kerberos 5 authenticated 403 transfers.</p> 404 </dd> 405 406 <dt><var class= 407 "LITERAL">--enable-mit_kerberos4</var></dt> 408 409 <dd> 410 <p>Include support for MIT Kerberos 4 authenticated 411 transfers.</p> 412 </dd> 413 414 <dt><var class= 415 "LITERAL">--disable-kerberos_checks</var></dt> 416 417 <dd> 418 <p>Disable checks for kerberos support libraries, 419 etc.</p> 420 </dd> 421 422 <dt><var class="LITERAL">--with-lpddir=DIR</var></dt> 423 424 <dd> 425 <p>lpd executable directory (default ${sbindir}). For 426 historical configuration compatibility.</p> 427 </dd> 428 429 <dt><var class="LITERAL">--with-filterdir=DIR</var></dt> 430 431 <dd> 432 <p>Filter directory (default ${libexecdir}/filters). 433 For historical configuration compatibility.</p> 434 </dd> 435 436 <dt><var class= 437 "LITERAL">--with-lpd_conf_path=PATH</var></dt> 438 439 <dd> 440 <p>Path of <tt class="FILENAME">lpd.conf</tt> file. For 441 historical configuration compatibility.</p> 442 </dd> 443 444 <dt><var class= 445 "LITERAL">--with-lpd_perms_path=PATH</var></dt> 446 447 <dd> 448 <p>Path of <tt class="FILENAME">lpd.perms</tt> file. 449 For historical configuration compatibility.</p> 450 </dd> 451 452 <dt><var class= 453 "LITERAL">--with-printcap_path=PATH</var></dt> 454 455 <dd> 456 <p>Path of <tt class="FILENAME">printcap</tt> file. For 457 historical configuration compatibility.</p> 458 </dd> 459 460 <dt><var class= 461 "LITERAL">--with-ld_library_path=PATHLIST</var></dt> 462 463 <dd> 464 <p>Set the LD_LIBRARY_PATH environment variable of 465 filters to this value.</p> 466 </dd> 467 468 <dt><var class= 469 "LITERAL">--with-filter_path=PATHLIST</var></dt> 470 471 <dd> 472 <p>Set the PATH environment variable of filters to this 473 value.</p> 474 </dd> 475 476 <dt><var class="LITERAL">--with-userid=NAME</var></dt> 477 478 <dd> 479 <p>Run <b class="APPLICATION">LPRng</b> as this user, 480 default daemon</p> 481 </dd> 482 483 <dt><var class="LITERAL">--with-groupid=NAME</var></dt> 484 485 <dd> 486 <p>Run <b class="APPLICATION">LPRng</b> as this group, 487 default daemon</p> 488 </dd> 489 490 <dt><var class="LITERAL">--with-lockfile=PATH</var></dt> 491 492 <dd> 493 <p>The lockfile path. This will be expanded to 494 PATH.server or PATH.port allowing multiple <b class= 495 "APPLICATION">LPRng</b> servers to run on a single 496 host.</p> 497 </dd> 498 499 <dt><var class="LITERAL">--with-filterdir=PATH</var></dt> 500 501 <dd> 502 <p>Location of the filters installed by <b class= 503 "APPLICATION">LPRng</b>.</p> 504 </dd> 505 506 <dt><var class="LITERAL">--with-done_jobs=N</var></dt> 507 508 <dd> 509 <p>retain status of last N done jobs.</p> 510 </dd> 511 512 <dt><var class= 513 "LITERAL">--with-done_jobs_max_age=N</var></dt> 514 515 <dd> 516 <p>remove status of done jobs older than N seconds.</p> 517 </dd> 518 519 <dt><var class= 520 "LITERAL">--with-chooser_routine=NAME</var></dt> 521 522 <dd> 523 <p>name of chooser routine provided by user</p> 524 </dd> 525 526 <dt><var class= 527 "LITERAL">--with-order_routine=NAME</var></dt> 528 529 <dd> 530 <p>name of order routine provided by user</p> 531 </dd> 532 533 <dt><var class="LITERAL">--with-user_objs=NAME</var></dt> 534 535 <dd> 536 <p>object file with routines provided by user</p> 537 </dd> 538 539 <dt><var class= 540 "LITERAL">--with-user_include=NAME</var></dt> 541 542 <dd> 543 <p>include file with templates for routines provided by 544 user</p> 545 </dd> 546 547 <dt><var class="LITERAL">--disable-strip</var></dt> 548 549 <dd> 550 <p>Do not strip the executables before installing. For 551 debugging and diagnostic purposes.</p> 552 </dd> 553 554 <dt><var class= 555 "LITERAL">--with-unixsocketpath=PATHNAME</var></dt> 556 557 <dd> 558 <p>the pathname of the UNIX socket (off or blank to 559 disable)</p> 560 </dd> 561 562 <dt><var class="LITERAL">--disable-ssl</var></dt> 563 564 <dd> 565 <p>disable ssl support</p> 566 </dd> 567 568 <dt><var class="LITERAL">--with-openssl=DIR</var></dt> 569 570 <dd> 571 <p>root location for OpenSSL</p> 572 </dd> 573 574 <dt><var class="LITERAL">--with-openssl-inc</var></dt> 575 576 <dd> 577 <p>OpenSSL include files</p> 578 </dd> 579 580 <dt><var class="LITERAL">--with-openssl-lib</var></dt> 581 582 <dd> 583 <p>OpenSSL library files</p> 584 </dd> 585 586 <dt><var class= 587 "LITERAL">--with-ssl_ca_file=FILE</var></dt> 588 589 <dd> 590 <p>ssl Certificate Authority CERT file (default 591 ${sysconfdir}/lpd/ssl.ca/ca.crt)</p> 592 </dd> 593 594 <dt><var class="LITERAL">--with-ssl_ca_key=KEY</var></dt> 595 596 <dd> 597 <p>ssl Certificate Authority private key file (default 598 ${sysconfdir}/lpd/ssl.ca/ca.key)</p> 599 </dd> 600 601 <dt><var class= 602 "LITERAL">--with-ssl_certs_dir=DIR</var></dt> 603 604 <dd> 605 <p>ssl Certificate Authority certs working directory 606 (default ${sysconfdir}/lpd/ssl.certs/)</p> 607 </dd> 608 609 <dt><var class= 610 "LITERAL">--with-ssl_server_cert=FILE</var></dt> 611 612 <dd> 613 <p>ssl server certificate file (default 614 ${sysconfdir}/lpd/ssl.server/server.crt)</p> 615 </dd> 616 617 <dt><var class= 618 "LITERAL">--with-ssl_server_password_file=FILE</var></dt> 619 620 <dd> 621 <p>ssl server private key in password file (default 622 ${sysconfdir}/lpd/ssl.server/server.pwd)</p> 623 </dd> 624 </dl> 625 </div> 626 <br> 627 <br> 628 629 <p>It is recommended that you use one of the following 630 configurations:</p> 631 632 <ol type="1"> 633 <li> 634 <p>If you already have a print spooling system installed 635 and want to install <b class="APPLICATION">LPRng</b> for 636 testing purposes or as an alternative to the existing 637 system and keep your existing print spooling system, 638 use:</p> 639 640 <div class="INFORMALEXAMPLE"> 641 <a name="AEN869"></a> 642<pre class="SCREEN"> 643 ./configure 644 645 use defaults for file locations and permissions: 646 /usr/local/{bin,sbin,libexec/filters,man} 647 requires lpd to run on the local host 648 executables installed setuid ROOT 649</pre> 650 </div> 651 <br> 652 <br> 653 </li> 654 655 <li> 656 <p>If you have manual pages in <tt class= 657 "FILENAME">/usr/share/man</tt>, your existing print 658 spooling system has executables in <tt class= 659 "FILENAME">/usr/bin</tt> and <tt class= 660 "FILENAME">/usr/sbin</tt>, and you want to replace your 661 existing print spooling system, use:</p> 662 663 <div class="INFORMALEXAMPLE"> 664 <a name="AEN876"></a> 665<pre class="SCREEN"> 666 ./configure --prefix=/usr --sysconfdir=/etc \ 667 --mandir=/usr/share/man 668 669 executables and files in 670 /usr/{bin,sbin,libexec/filters} 671 /usr/share/man/man[0-9] 672 requires lpd to run on the local host 673 everything installed setuid ROOT 674</pre> 675 </div> 676 <br> 677 <br> 678 </li> 679 680 <li> 681 <p>If you have manual pages in <tt class= 682 "FILENAME">/usr/share/man</tt> and allow jobs (by 683 default) to be sent directly to the server host 684 (lightweight operation), use:</p> 685 686 <div class="INFORMALEXAMPLE"> 687 <a name="AEN881"></a> 688<pre class="SCREEN"> 689 ./configure --prefix=/usr --sysconfdir=/etc \ 690 --mandir=/usr/share/man --disable-force_localhost 691 692 executables and files in 693 /usr/{bin,sbin,libexec/filters} 694 /usr/share/man/man[0-9] 695 does not require lpd to run on the local host 696 everything installed setuid ROOT 697</pre> 698 </div> 699 <br> 700 <br> 701 </li> 702 </ol> 703 <br> 704 <br> 705 </div> 706 707 <div class="NAVFOOTER"> 708 <hr align="LEFT" width="100%"> 709 710 <table summary="Footer navigation table" width="100%" border= 711 "0" cellpadding="0" cellspacing="0"> 712 <tr> 713 <td width="33%" align="left" valign="top"><a href= 714 "usergroup.htm" accesskey="P">Prev</a></td> 715 716 <td width="34%" align="center" valign="top"><a href= 717 "index.htm" accesskey="H">Home</a></td> 718 719 <td width="33%" align="right" valign="top"><a href= 720 "requireconfig.htm" accesskey="N">Next</a></td> 721 </tr> 722 723 <tr> 724 <td width="33%" align="left" valign="top">Daemon User and 725 Daemon Group</td> 726 727 <td width="34%" align="center" valign="top"><a href= 728 "installation.htm" accesskey="U">Up</a></td> 729 730 <td width="33%" align="right" valign="top">System and 731 User Printcap, lpd.conf, and lpd.perms files</td> 732 </tr> 733 </table> 734 </div> 735 </body> 736</html> 737 738