LPRng-HOWTO: 15 Oct 2001 (For LPRng-3.7.9)
Prev | Chapter 4. Print Spooling Tutorial | Next

# 4.2. Sample Printcap Entry

As described in the Print Spooling Overview, the information in the `printcap` database is used control printing operations. While there is no RFC specifying its format or content, there is a strong de facto standard for its format. For a complete description of the `printcap` database see Printcap Database. For a list of all of the `printcap` and configuration options see Index To All The Configuration and Printcap Options.

Here is a sample printcap suitable for use by the LPRng clients:

        LPRng use :lp for destination (device and spool queue)
           lp:lp=lp@h4.private
           lpreal:lp=/dev/lp0

        Vintage BSD uses :rp:rm for spooler queue and :lp for device
          lp:rp=lp:rm=h4.private
          lpdev:lp=/dev/lp0

The `:lp=lp@h4.private` printcap entry tells the client programs that jobs for the lp printer or print queue are sent to the lp print queue queue on host `h4.private`. This can also be specified using the The legacy BSD `:rp` and `:rm`. The `:rp=`queue option specifies the print queue `:rm=`host option specifies the host. When both `lp` and `:rp:rm` are present the `:lp` option has precedence.

On the printserver the following is a sample printcap entry suitable for the lpd server:

        lp:
          :lp=/dev/lp0
          :sd=/var/spool/lpd/%P
          :filter=/usr/local/libexec/filters/ifhp

The `:sd=`directory option (spool queue directory) specifies the directory where print jobs will be placed. The `%P` will be replaced with the name of the spool queue. The `:lp` literal is now the path to the output device the lpd server will use to print the job. The `:filter` literal specifies the filter program to use to process the job before sending to the output device.

Here is another example of a printcap entry using the `%P` notation:

        lp:lp=%P@h4.private

This entry will cause all jobs sent to the `lp` spool queue to be sent to the `lp` queue on `server`. `%X` strings in the printcap entries are expanded as shown:

Key | Replaced By
--- | ---
`%P` | printcap entry primary name (printer)
`%Q` | queue requested
`%h` | short host name (host)
`%H` | fully qualified host name (host.dns.whatever)
`%R` | remote printer (rp value)
`%M` | remote host (rm value)
`%D` | date in YYYY-MM-DD format

Prev | Home | Next
Print Spooling Tutorial | Up | Setting Up the Tutorial Configuration