Up: SGI admin Frequently Asked Questions (FAQ)
Next: -77- How can I print to a printer with a JetDirect card?
Previous: -75- How can I tell 'lp' to turn banner printing or page reversal off or on?
Subject: -76- How can I use 'lpr' instead of or as well as 'lp'?
Date: 06 Apr 1996 00:00:01 EST
IRIX is based on System V Unix and as such uses the lp(1) printing
protocol. The lp software is sufficient (and preferred) for printing
to local printers, printing to network printers attached to SGIs or
other machines using the lp protocol, and acting as a print server to
machines using the lp protocol. In IRIX 5.3/6.1 or later, it can also
print to remote printers using the lpr protocol and act as an lpr
server. SGI's standard lp interface scripts handle several common
file formats (text, PostScript, RGB images) automatically, and
Impressario (which works through the lp software) handles much more.
The lp software is installed by default.
lpr(1) is the BSD Unix printing protocol. SGI provides and supports
the lpr software only for printing to network printers attached to
computers which use the lpr protocol, e.g. a BSD Unix machine, an HP
printer with an appropriately configured JetDirect card or a
Macintosh running lpDaemon. It can also be used, unofficially, for
controlling a local printer and for a print server. It comes with no
support for handling different file formats at all. The lpr software
is not installed by default. It is in the eoe2.sw.bsdlpr subsystem in
IRIX 4.0.x and print.sw.bsdlpr in IRIX 5.x.
You can use lpr to print to a local printer in one of two ways:
- Set the printer up as an lp printer and write a printcap(4) entry
with an output filter which is just a wrapper around lp. If that
isn't crystal-clear, ask SGI for their writeup on "Integrating The
AT&T Spooler With The BSD LPR Print Spooler". A not-guaranteed-to-
be-up-to-date copy is at
ftp://viz.tamu.edu/pub/sgi/software/print/lpr-to-lp.
- Write a printcap entry and set up the printer as an lpr printer
just as you would on a BSD system. SGI doesn't support this use of
lpr, and comp.sys.sgi.* won't be much help either.
Now that the printer is set up as an lpr printer, you won't be able
to use lp with it directly. You can make lp(1) send files to a
local lpr printer in one of two ways:
- Use an lp interface script that calls lpr. You can use
mkbsdpr(1M), which comes with Impressario 1.1 and later (see the
Impressario FAQ), write one yourself or ask SGI for their writeup
"LPTOLPR, A Model File for LP". A not-guaranteed-to-be-up-to-date
copy of the last is at
ftp://viz.tamu.edu/pub/sgi/software/print/lp-to-lpr.
- Replace lp with a script which calls lpr. One such script is
ftp://viz.tamu.edu/pub/sgi/software/print/lp-wrapper-for-lpr.
You can print to an lpr server in one of two ways:
- Under IRIX 5.3/6.1 or later, use the lp software. Just use
printers(1M) to add the remote printer. The "list printer" button
will not list lpr printers; just enter the name of the remote
printer manually. This may or may not work for a printer with a
JetDirect card; see the next entry.
- Under older IRIXes, or if you're used to it, use the lpr software.
See SGI's "Advanced Site and Server Administration Guide".
You can set up an lpr server in one of two ways:
- Under IRIX 5.3/6.1 or later, you don't need to, because the lp
server is also an lpr server. This is officially documented only in
'relnotes print 3'. There are some caveats:
- Don't define printers to the lp and lpr software (i.e. in
/var/spool/lp/interface and /etc/printcap) with the same name.
- Clients must be in ~lp/.rhosts or /etc/hosts.equiv; lpsched
won't look in /etc/hosts.lpd.
- lpd must not be running when lpsched starts up. If you want to
switch from lpd to lpsched, do '/etc/init.d/bsdlpr stop;
/etc/init.d/lp stop; /etc/init.d/lp start'. /etc/init.d/bsdlpr
can't be chkconfig'ed off, so if you want to leave the lpr
software installed you'll have to move /etc/init.d/bsdlpr to
another name so it won't run on bootup.
- The client must send the control file before the data file. Most
Unixes do; some PCs do not. It might be informative to run lpsched
with the -debug flag, or just try it and see if it works. lpd
accepts either file order; lpsched should, and will in IRIX 6.2.
- Under older IRIXes, or if you can't get the previous solution to
work, or if you're a BSD head, use the lpr software. Set up your
local printer as an lpr printer (see above) and edit /etc/hosts.lpd
to grant access to the clients. Again, SGI won't support this.
Up: SGI admin Frequently Asked Questions (FAQ)
Next: -77- How can I print to a printer with a JetDirect card?
Previous: -75- How can I tell 'lp' to turn banner printing or page reversal off or on?