|
|
1.1 root 1: .\" Copyright (c) 1983 Regents of the University of California.
2: .\" All rights reserved. The Berkeley software License Agreement
3: .\" specifies the terms and conditions for redistribution.
4: .\"
5: .\" @(#)printcap.5 6.4 (Berkeley) 5/14/86
6: .\"
7: .TH PRINTCAP 5 "May 14, 1986"
8: .UC 5
9: .ad
10: .SH NAME
11: printcap \- printer capability data base
12: .SH SYNOPSIS
13: /etc/printcap
14: .SH DESCRIPTION
15: .I Printcap
16: is a simplified version of the
17: .IR termcap (5)
18: data base
19: used to describe line printers. The spooling system accesses the
20: .I printcap
21: file every time it is used, allowing dynamic
22: addition and deletion of printers. Each entry in the data base
23: is used to describe one printer. This data base may not be
24: substituted for, as is possible for
25: .IR termcap ,
26: because it may allow accounting to be bypassed.
27: .PP
28: The default printer is normally
29: .IR lp ,
30: though the environment variable PRINTER
31: may be used to override this. Each spooling utility supports an option,
32: .BI \-P printer,
33: to allow explicit naming of a destination printer.
34: .PP
35: Refer to the
36: .ul
37: 4.3BSD Line Printer Spooler Manual
38: for a complete discussion on how setup the database for a given printer.
39: .SH CAPABILITIES
40: Refer to
41: .IR termcap (5)
42: for a description of the file layout.
43: .nf
44:
45: .ta \w'k0-k9 'u +\w'Type 'u +\w'``/usr/spool/lpd\'\' 'u
46: \fBName Type Default Description\fR
47: af str NULL name of accounting file
48: br num none if lp is a tty, set the baud rate (ioctl call)
49: cf str NULL cifplot data filter
50: df str NULL tex data filter (DVI format)
51: fc num 0 if lp is a tty, clear flag bits (sgtty.h)
52: ff str ``\ef'' string to send for a form feed
53: fo bool false print a form feed when device is opened
54: fs num 0 like `fc' but set bits
55: gf str NULL graph data filter (plot (3X) format)
56: hl bool false print the burst header page last
57: ic bool false driver supports (non standard) ioctl to indent printout
58: if str NULL name of text filter which does accounting
59: lf str ``/dev/console'' error logging file name
60: lo str ``lock'' name of lock file
61: lp str ``/dev/lp'' device name to open for output
62: mx num 1000 maximum file size (in BUFSIZ blocks), zero = unlimited
63: nd str NULL next directory for list of queues (unimplemented)
64: nf str NULL ditroff data filter (device independent troff)
65: of str NULL name of output filtering program
66: pc num 200 price per foot or page in hundredths of cents
67: pl num 66 page length (in lines)
68: pw num 132 page width (in characters)
69: px num 0 page width in pixels (horizontal)
70: py num 0 page length in pixels (vertical)
71: rf str NULL filter for printing FORTRAN style text files
72: rg str NULL restricted group. Only members of group allowed access
73: rm str NULL machine name for remote printer
74: rp str ``lp'' remote printer name argument
75: rs bool false restrict remote users to those with local accounts
76: rw bool false open the printer device for reading and writing
77: sb bool false short banner (one line only)
78: sc bool false suppress multiple copies
79: sd str ``/usr/spool/lpd'' spool directory
80: sf bool false suppress form feeds
81: sh bool false suppress printing of burst page header
82: st str ``status'' status file name
83: tf str NULL troff data filter (cat phototypesetter)
84: tr str NULL trailer string to print when queue empties
85: vf str NULL raster image filter
86: xc num 0 if lp is a tty, clear local mode bits (tty (4))
87: xs num 0 like `xc' but set bits
88: .fi
89: .PP
90: If the local line printer driver supports indentation, the daemon
91: must understand how to invoke it.
92: .SH FILTERS
93: The
94: .IR lpd (8)
95: daemon creates a pipeline of
96: .I filters
97: to process files for various printer types.
98: The filters selected depend on the flags passed to
99: .IR lpr (1).
100: The pipeline set up is:
101: .RS
102: .PP
103: .nf
104: .ta 0.5i +1i
105: \-p pr | if regular text + \fIpr\fP(1)
106: none if regular text
107: \-c cf cifplot
108: \-d df DVI (tex)
109: \-g gf \fIplot\fP(3)
110: \-n nf ditroff
111: \-f rf Fortran
112: \-t tf troff
113: \-v vf raster image
114: .fi
115: .RE
116: .PP
117: The
118: .B if
119: filter is invoked with arguments:
120: .PP
121: \fIif\fP [ \fB\-c\fP ] \fB\-w\fPwidth \fB\-l\fPlength \fB\-i\fPindent \fB\-n\fP login \fB\-h\fP host acct-file
122: .PP
123: The
124: .B \-c
125: flag is passed only if the
126: .B \-l
127: flag (pass control characters literally)
128: is specified to
129: .IR lpr .
130: .I Width
131: and
132: .I length
133: specify the page width and length
134: (from
135: .B pw
136: and
137: .B pl
138: respectively) in characters.
139: The
140: .B \-n
141: and
142: .B \-h
143: parameters specify the login name and host name of the owner
144: of the job respectively.
145: .I Acct-file
146: is passed from the
147: .B af
148: .I printcap
149: entry.
150: .PP
151: If no
152: .B if
153: is specified,
154: .B of
155: is used instead,
156: with the distinction that
157: .B of
158: is opened only once,
159: while
160: .B if
161: is opened for every individual job.
162: Thus,
163: .B if
164: is better suited to performing accounting.
165: The
166: .B of
167: is only given the
168: .I width
169: and
170: .I length
171: flags.
172: .PP
173: All other filters are called as:
174: .PP
175: \fIfilter\fP \fB\-x\fPwidth \fB\-y\fPlength \fB\-n\fP login \fB\-h\fP host acct-file
176: .PP
177: where
178: .I width
179: and
180: .I length
181: are represented in pixels,
182: specified by the
183: .B px
184: and
185: .B py
186: entries respectively.
187: .PP
188: All filters take
189: .I stdin
190: as the file,
191: .I stdout
192: as the printer,
193: may log either to
194: .I stderr
195: or using
196: .IR syslog (3),
197: and must not ignore
198: .SM SIGINT.
199: .SH LOGGING
200: Error messages generated by the line printer programs themselves
201: (that is, the
202: .IR lp *
203: programs)
204: are logged by
205: .IR syslog (3)
206: using the
207: .I LPR
208: facility.
209: Messages printed on
210: .I stderr
211: of one of the filters
212: are sent to the corresponding
213: .B lf
214: file.
215: The filters may, of course, use
216: .I syslog
217: themselves.
218: .PP
219: Error messages sent to the console have a carriage return and a line
220: feed appended to them, rather than just a line feed.
221: .SH "SEE ALSO"
222: termcap(5),
223: lpc(8),
224: lpd(8),
225: pac(8),
226: lpr(1),
227: lpq(1),
228: lprm(1)
229: .br
230: .ul
231: 4.3BSD Line Printer Spooler Manual
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.