 |
Index for Section 4 |
|
 |
Alphabetical listing for P |
|
 |
Bottom of page |
|
printcap(4)
NAME
printcap - Printer capability data base
SYNOPSIS
/etc/printcap
DESCRIPTION
The printcap file is used to describe printer characteristics. The format
of the printcap file is a simplified version of the /etc/termcap database
format.
The lpd line printer daemon accesses the /etc/printcap file every time a
file is passed to the spooler for printing. The print spooling system uses
the printcap file to obtain information about each printer attached to the
system and about remote printers. Each entry in the printcap file
describes a single printer.
When the local line printer driver supports indentation, the lpd line
printer daemon must understand how to invoke this capability.
The default printer for your system usually has the device reference lp,
although environment variable PRINTER can be used to override the default
printer reference. The print commands (for example, lpr, lpq, and lprm)
support the -Pprinter option, which enables you to specify a specific
printer.
Note
See the RESTRICTIONS section for information on using printconfig.
Printer Characteristic Symbols
Each printer has various characteristics that tell the lpd line printer
daemon how to communicate with the printing device defined in the /dev
directory. A table in this section lists the printer characteristic symbols
and provides the following information for each:
Name
The symbol, which is a 2-character mnemonic. The symbol must be
specified exactly as it appears in this column.
Type
Type of data expressed by the entry as str, num, or bool. When the
characteristic defined by the symbol is referenced as a string variable
(str) in the Type column, it must be followed by an = (equal sign)
together with a string value; when you do not define the string value,
it either remains a NULL string and contains no data or takes the value
specified in the Default column. When the Type column defines a symbol
type as bool, it may only be logically true (yes) or logically false
(no).
When the parameter you define is a numerical variable, it must be
followed with a # (pound sign) together with the numerical value you
assign; when you do not define the numerical parameter it takes the
value specified in the Default column of the table.
Description
A summary of the printer characteristic that the symbol specifies.
Symbols whose descriptions are followed by "(I18N)" are provided to
meet country-specific printing requirements. Refer to i18n_printing(5)
for information about when these symbols are valid in a printer entry.
The following is an example of a printcap entry:
myprinter|lp0:\
:af=/usr/adm/lpacct:\
:br#9600:\
:ct=dev:\
:fc#0177777:\
:fs#023:\
:if=/usr/lbin/la75of:\
:lf=/usr/adm/lperr:\
:lp=/dev/tty00:\
:mx#0:\
:of=/usr/lbin/la75of:\
:pl#66:\
:pw#80:\
:sd=/usr/spool/lpd:\
:xc#0177777:\
:xf=/usr/lbin/xf:\
:xs#044000:
Entries can continue onto multiple lines by specifying the backslash
(\) as the last character of a line. Empty fields can be included for
readability (here between the last field on a line and the first field
on the next line).
Comments can be included on lines beginning with the pound sign (#).
Refer to the RESTRICTIONS section for information on blank spaces and
tab characters.
___________________________________________________________________
Name Type Default Description
___________________________________________________________________
af str NULL Name of accounting file
br num none
If lp is a tty, set the baud rate
(ioctl call).
cf str NULL The cifplot data filter.
ct str dev
The connection type. The choices
are: dev, LAT (or lat), and tcp
(networked).
df str NULL The tex data filter (DVI format).
fc num 0
If lp is a tty, clear flag bits
(sgtty.h).
ff str \f String to send for a form feed.
fo bool false
Print a form feed when the device is
opened.
fs num 0 Like fc, but set bits.
gf str NULL The graph data filter (plot format).
hl bool false Print the burst header page last.
if str NULL
Name of text filter that does
accounting.
jj bool NULL
Turns on (or restores) the ability
of lpd to keep one connection to a
printer open for all pending jobs in
the queue. Zero (0) is off (one job
per connection), 1 is on (multiple
jobs per connection).
lf str Error logging filename.
/dev/console
lo str lock Name of lock file.
lp str /dev/lp
Device name to open for output. For
network (TCP/IP) printers, enter the
name a @hostname/servicename. The
servicename is defined in
/etc/services with the port number.
mj num 1000
Maximum number of jobs that can be
submitted to a print queue. The
limit is 1,000,000 (ranging from 0
to 999,999).
mx num 1000
Maximum file size (in BUFSIZ
blocks). Zero = unlimited.
nf str NULL
The ditroff data filter (for device
independent troff).
of str NULL Name of output filtering program.
on str NULL
Supported in clusters only. Valid
entries are localhost and/or a
comma-separated list of cluster
member (host) names.
pl num 66 Page length (in lines).
pw num 132 Page width (in columns).
px num 0 Page width in pixels (horizontal).
py num 0 Page length in pixels (vertical).
rf str NULL
Filter for printing FORTRAN style
text files.
rm str NULL
Machine name for remote printer.
(Required for remote printers.) Use
the string @dpa to define an inbound
gateway for the Advanced Printing
Software.
rp str lp
Remote printer name argument.
(Required for remote printers.)
Specify a logical printer name, such
as lpr1, for the Advanced Printing
Software.
rs bool false
Restrict remote users to those with
local accounts.
rw bool false
Open the printer device for reading
and writing.
sb bool false Short banner (one line only).
sc bool false Suppress multiple copies.
sd str
/usr/spool/lpd
Spool directory. (Required for LAT
and remote printers.)
sf bool false Suppress form feeds.
sh bool false
Suppress printing of burst page
header.
st str status Status filename.
tf str NULL
The troff data filter (for the cat
phototypesetter).
tr str NULL
Trailer string to print when queue
empties.
vf str NULL The raster image filter.
xc num 0
If lp is a tty, clear local mode
bits (tty).
xf str NULL Pass-through filter.
xs num 0 Like xc, but set bits.
ya str NULL
Additional parameters for print
filter (I18N).
yd str NULL
Secondary device name for font
faulting (I18N).
yp str NULL
Printer ID conforming to Wototo
standard (I18N).
ys num 0
Size of SoftODL character cache
(I18N).
yt str "fifo"
SoftODL character replacement
strategy (I18N).
___________________________________________________________________
When the local line printer driver supports indentation, the lpd line
printer daemon must understand how to invoke this capability.
LAT Printing Characteristics
The following table lists the LAT printing characteristics:
_____________________________________________________
Name Type Default Description
_____________________________________________________
ct str LAT
Remote printing using LAT
as the transport
lp str /dev/ttyWX
Device name to open for
output where WX is a LAT
device.
_____________________________________________________
Network (TCP/IP) Printing Characteristics
The following table lists typical TCP/IP printing characteristics for a
DEClaser3500 printer. The entry in the /etc/services file reads:
dlaser35 10001/tcp
Examples of print symbol settings are set as follows:
ct Has a value of tcp to specify network printing using TCP/IP
lp Has a value of @prthub/dlaser35 which specifies service name dlaser35
on node prthub
Advanced Printing Software
If Advanced Printing Software is installed you must specify the string @dpa
for the rm characteristic and specify a queue name for the rp
characteristic.
Refer to the Advanced Printing Software documentation for more information
on setting up the printing environment.
Filter and Flags
The lpd line printer daemon creates a pipeline of filters to process files
for various different printer device. The filters you select depend on the
flags that are passed to the lpr command. The pipeline setup is:
__________________________________
Flag Filter Description
__________________________________
none if regular text
-p pr | if regular text + pr
-c cf cifplot
-d df DVI (tex)
-g gf plot
-n nf ditroff
-f rf FORTRAN
-t tf troff
-v vf raster image
__________________________________
The if filter is invoked with arguments according to the following format:
if [-c] -wwidth -llength -iindent -nlogin -hhost acct-file
The xf pass-through filter is specified when output is preformatted and
does not require special filtering.
The -c flag is passed only when the -l flag (pass control-characters
literally) is specified to the lpr command. The -wwidth and -llength
parameters specify the page width and length (from the assigned or default
values of pw and pl respectively in the printcap file) in characters. The
-n and -h flags specify the login name and hostname of the owner of the
job, respectively. The acct-file is passed from the af entry in the
printcap file.
The if filter is opened for all individual jobs, which makes it suitable
for accounting. When the if filter is not specified, the system uses the of
filter as the default value. The of filter however, is opened only once and
is only given the -wwidth and -llength flags.
All other filters are called according to the following format:
filter -xwidth -ylength -nlogin -h host acct-file
In this format, -xwidth and -ylength are represented in pixels as specified
by the px and py entries, respectively, in the printcap file.
All filters take standard input (stdin) as the source file and standard
output (stdout) as the destination. The printer may log either to standard
error (stderr) or use syslogd, and must not ignore the SIGINT signal.
ERROR LOGGING
Error messages generated by the line printer programs (that is, the lp*
programs) are logged by syslogd using the lpr facility. Messages printed
on the stderr of one of the filters are sent to the corresponding lf file
specified in the printcap file. The filters may, of course, also use
syslogd.
Error messages sent to the console have a carriage return and a line feed
appended to them, rather than just a line feed.
RESTRICTIONS
Editing the /etc/printcap file manually is not recommended. Use the
appropriate configuration utilities to add printers and symbols. If a
printcap file is corrupted, you will see an error message to this effect.
A likely cause of such corruption is the presence of tab or space
characters in a blank line or following a continuation character (\). Use
the following command to find incorrect tabs or spaces in the printcap
file:
$ cat -e /etc/printcap | more
The preceding command marks the end of each line with a dollar sign ($) so
that trailing tabs and spaces are easily visible.
The following restrictions apply when using older versions of printcap
files, at Digital UNIX Version 3.2 or earlier:
Aliases that conflict with system-assigned names
The system assigns printers names lp[0-9]*, [0-9]*, and for the default
printer, lp. For example, the default printer may have a name field
such as lp0|0|lp|default|declaser3500:... and another printer may be
lp7|7|some_alias|another alias:.... As a result, the system will have
difficulty with printers that have less than two names or that use
these reserved names as aliases.
Altered attribute validation
Some of the attribute value checking is different. For example, some
fields that were not required now are, and some attributes values that
were legal no longer are.
Trailing comments
The printconfig utility requires that all comments be associated with a
printer. As a result, comments appearing after the last printer will be
truncated (deleted). As a work around, invoke printconfig with the menu
interface as follows:
printconfig -ui menu
this command invokes lprsetup which is fully compatible with earlier
printcap files.
SEE ALSO
Commands: lpq(1), lpr(1), lprm(1), lpc(8), lpd(8), lprsetup(8), pac(8)
Files: termcap(4)
Others: i18n_printing(5)
System Administration
Network Administration: Connections
 |
Index for Section 4 |
|
 |
Alphabetical listing for P |
|
 |
Top of page |
|