User`s guide

4-160
Guide to Printers and Printing
Choose the file option, then choose a printer type. After you choose the IBM 4029
LaserPrinter (or whatever is correct for your situation), provide the name of an existing file in
the /dev directory. This is the file to which processed jobs submitted to the queue you are
creating are written. The name of the file can be anything that adheres to AIX naming
conventions. A reasonable action is to create a file just for the purpose of being the target of
file queues. For instance, the root user can issue the command touch /dev/lxx to create a
file named lxx in the /dev directory.
After you provide the name of a file in the /dev directory, choose a queue name for each
input data stream supported by the printer type you selected earlier. In this example,
suppose the name asc was chosen for an ASCII queue. An entry like the following would
appear in /etc/qconfig:
asc:
device = lxx
lxx:
file = /dev/lxx
header = never
trailer = never
access = both
backend = /usr/lib/lpd/piobe
Any print job submitted to the spooler queue asc is processed by the pipeline set up by
piobe. The processed data stream is written to /dev/lxx. This is not what you want to
happen. Since the goal is to have ts_print write the output to port 11 on the terminal
server, there should in fact not even be a file associated with this queue. To this end, edit
the new stanza pair in /etc/qconfig and change the value of the file parameter to FALSE,
like this:
asc:
device = lxx
lxx:
file = FALSE
header = never
trailer = never
access = both
backend = /usr/lib/lpd/piobe
If you use this queue in this state, you do not see anything written to a file or printed
anywhere, except maybe for error messages. When the qdaemon sets the backend, piobe,
into execution, it passes piobe an open file descriptor based on the value of the file
parameter in /etc/qconfig. When that value is set to FALSE, the file descriptor is not
passed. The eventual recipient and user of the file descriptor is whatever program is pointed
to by the mo attribute. The default program pointed to by the mo attribute is pioout and,
when jobs are put on the queue when it is in this state, pioout will not have a valid value for
stdout, and the processed job will simply vanish.
At this point, you can use lsvirprt to select the asc virtual printer definition for modification.
A prompt similiar to the following displays:
To LIST attributes, enter AttributeName1 ... (* for all
attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter:
Assuming the ts_print program was installed in /usr/bin, enter the following at the
prompt:
mo=/usr/bin/ts_print –A 9.19.129.101 –P 11
Jobs submitted to the asc queue will now be processed as if they were local jobs but, when
the end of the pipeline is reached, the ts_print program will deliver the output data
stream to port 11 on the terminal server instead of pioout delivering it to a device driver.