is a simplified version of the
used to describe line printers.
The spooling system accesses the
file every time it is used, allowing dynamic
addition and deletion of printers.
Each entry in the data base
is used to describe one printer.
This data base may not be
substituted for, as is possible for
because it may allow accounting to be bypassed.
The default printer is normally
though the environment variable
may be used to override this.
Each spooling utility supports an option,
to allow explicit naming of a destination printer.
Refer to the
"4.3 BSD Line Printer Spooler Manual"
for a complete discussion on how to setup the database for a given printer.
for a description of the file layout.
"afstr" Ta NULL Ta name of accounting file
"brnumnoneif lp is a tty, set the baud rate"
"cfstr" Ta NULL Ta cifplot data filter
"ctnum120TCP connection timeout in seconds"
"dfstr" Ta NULL Ta tex data filter
"ffstr" Ta So \f Sc Ta string to send for a form feed
"foboolfalseprint a form feed when device is opened"
"gfstr" Ta NULL Ta graph data filter
"hlboolfalseprint the burst header page last"
"icboolfalsedriver supports (non standard) ioctl to indent printout"
"ifstr" Ta NULL Ta name of text filter which does accounting
"lfstr" Ta /dev/console Ta error logging file name
"lostr" Ta lock Ta name of lock file
"lpstr" Ta /dev/lp Ta device name to open for output, or port @ machine to open a TCP socket
"mcnum0maximum number of copies which can be requested on"
flag is passed only if the
flag (pass control characters literally)
is specified to
specify the page width and length
respectively) in characters.
parameters specify the login name and host name of the owner
of the job respectively.
is passed from the
is used instead,
with the distinction that
is opened only once,
is opened for every individual job.
is better suited to performing accounting.
is only given the
are represented in pixels,
specified by the
All filters take
as the file,
as the printer,
may log either to
and must not ignore
When printing to a remote printer using
it is possible to use either
If both are specified,
Both filters behave the same except that they are passed
different arguments as above.
Specifically, the output filter is
terminated and restarted for each file transmitted.
This is necessary
in order to pass the resulting size to the remote
flag was passed to
is not executed locally, but is requested of the remote
Any input filtering via
will therefore happen before
is executed rather than afterwards.
There are some models of network printers which accept jobs from
but they ignore the control file for a job and simply print
each data file as it arrives at the printer.
One side-effect of this behavior is that the printer will ignore any request
for multiple copies as given with the
flag on the
entry will cause
to resend each data file for each copy that the user
Note that the
entry should only be specified on hosts which send jobs directly to
is specified as
port @ machine
is not in use), print data will be sent directly to the given
on the given
When a print job is transfered to a remote machine (which might be
another unix box, or may be a network printer), it may be useful
to keep statistics on each transfer.
options indicate filenames that lpd should use to store such
A statistics line is written for each datafile of a
job as the file is successfully transferred.
The format of the
line is the same for both the sending and receiving side of a
Statistics on datafiles being received would be used on a print
server, if you are interested in network performance between a
variety of machines which are sending jobs to that print server.
The print server could collect statistics on the speed of each
print job as it arrived on the server.
Statistics on datafiles being sent might be used as a minimal
accounting record, when you want to know who sent which jobs to a
remote printer, when they were sent, and how large (in bytes) the
This will not give include any idea of how many pages
were printed, because there is no standard way to get that information
back from a remote (network) printer in this case.
Error messages generated by the line printer programs themselves
(that is, the
and related programs)
are logged by
Messages printed on
of one of the filters
are sent to the corresponding
The filters may, of course, use
Error messages sent to the console have a carriage return and a line
feed appended to them, rather than just a line feed.