User`s guide
2-3
Printers, Print Jobs, and Queues for Systems Administrators
The main spooler command is the enq command. Although you can invoke this command
directly to queue a print job, three front–end commands are defined for submitting a print
job: the lp, lpr, and qprt commands. A print request issued by one of these commands is
passed to the enq program that places the information about the file in the queue for the
qdaemon to process. The queue is the /var/spool/lpd/qdir directory.
If the job is not a file (that is, pipe output of a command to enq), a real file is created in
/var/spool/qdaemon, that contains the data to be printed. The information in the
/var/spool/lpd/qdir file points to the file in /var/spool/qdaemon.
Real and Virtual Printers
A real printer is the printer hardware attached to a serial or parallel port at a unique
hardware–device address. The printer device driver in the kernel communicates with the
printer hardware and provides an interface between the printer hardware and a virtual
printer. A real printer can be added with Web-based System Manager wsm devices; fast
path, or using the mkdev command at the command line.
A virtual printer is a set of attributes that defines a high–level data stream (such as ASCII or
PostScript) that the printer understands. This does not include information about how the
printer hardware is attached to the host computer or about the protocol used for transferring
bytes of data to and from the printer.
A virtual printer is associated with a print queue. You can define a print queue for each data
stream the printer supports. Multiple print queues can use the same real printer.
• To add print queues, use the Web-based System Manager fast path, wsm printers, the
SMIT Add a Print Queue option, or the mkque, mkquedev, and mkvirprt commands.
• To view a list of print queues and their associated virtual printers, use the Web-based
System Manager fastpath, wsm printers, the SMIT List All Print Queues option, or the
lsvirprt command.
When you submit a print job, a print queue must be directly or indirectly specified. To specify
a specific printer for a print job, add a colon and the printer device name to the print queue
name. If a printer is not specified for the print job, the spooler selects the first available
printer associated with the print queue. If there are several printers associated with a print
queue, any printer is used.
IBM Proprinters, for example, need only one print queue to be defined for each real printer.
This is because Proprinters support only one data stream, IBM extended ASCII. The IBM
4216 Model 031 Personal Pageprinter needs multiple print queues defined. A print queue
can be defined for each data stream the printer supports. A print queue can be defined for
PostScript, Proprinter, HP LaserJet, and Diablo 630 emulations. All four print queues output
to the same real printer, the 4216 Model 031.
Local and Remote Printers
A local printer is the printer attached to a node or host. A remote printer allows nodes that
are not directly linked to a printer to have printer access.
To use remote printing facilities, the individual nodes must be connected to a network using
the Transmission Control Protocol/Internet Protocol (TCP/IP) and must support the required
TCP/IP applications. The lpd daemon controls the remote print server and any host on a
network can be designated as a print server. Before a remote server can accept a print
request, the /etc/hosts.lpd or /etc/hosts.equiv file must be configured to accept print
requests from other nodes or hosts. Use Web-based System Manager wsm printers fast
path, or SMIT Manage Print Server option to configure a print server.
Printer Backends
The printer backend is a collection of programs started by the spooler’s qdaemon
command to manage a print job that is queued for printing. The printer backend performs
the following functions: