The following are a set of suggestions and recommendations for specific systems.
The Sun Solaris operating system is derived from the System V UNIX baseline. Please see the Solaris installation information for a detailed description of how to install LPRng and remove the Solaris Print Services.
As of March 17, 2000, there is no universal way to install LPRng cleanly on all of the different Linux systems. The major difficulty is the fragmentation in the various libraries, location of files, and so forth.
However, the good news is that most of the printcap files that are produced by the GUI interface tools are compatible with LPRng. The bad news is that the directory and file permissions that they generate are erroneous.
Here is an outline of how to install LPRng on most of the major LINUX systems.
./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man
make install,
run checkpc -f and make sure that you eliminate the errors.
lp:\
:if=/usr/local/libexec/lpr/hplaserjet3:\
:bk:\ <<<< added to the printcap by hand
:...
ifhp for directions on how to replace the vendor
supplied filters with ifhp.This information was supplied by Dirk Nitschke, as of August 1997, and describes how to install the LPRng package on a workstation running AIX 4.1.x and possibly 3.x.x as well. Dirk would be interested in any comments or corrections.
Printing on AIX systems is different. AIX provides a general
queueing facility and printing is only one way to use it. You submit a
print job to a print queue using one of the commands
qprt, enq. You can use the BSD or
System V printing commands lpr or lp, too. The
qdaemon watches all (general) queues and knows how to handle your
job. A (general) queue is defined in the file
/etc/qconfig. The format of this file is different from
the printcap format.
OK, how to replace the AIX printing system? There is no group
daemon on AIX. Therefore you have to change the default
group for file ownership and process permissions. We decided to use
the printq group. The user daemon exists on
AIX but we have chosen lpd as the user who runs
lpd and all filters and owns the spooling directories.
You can change the values for group
and user in your
lpd.conf file or in the sources
src/common/vars.c. This is an example for
lpd.conf:
# Purpose: group to run SUID ROOT programs
# default group=daemon
group=printq
# Purpose: server user for SUID purposes
# default user=daemon
user=lpd
Compile and install the LPRng package. Create your
printcap, spooling directories, accounting and logfiles
and so on.
Don't forget to use
checkpc to make sure that all the
permissions are set correctly and the necessary files
are created.
Then stop all print queues defined on your workstation. Use
# chque -q queuename -a "up = FALSE"
for this (yes, blanks around = are needed).
If you have local printers attached to your system you will have an
lpd running. Stop this daemon using SMIT (Print Spooling,
Manage Print Server, Stop the Print Server Subsystem). Choosing
both also removes lpd from
/etc/inittab. Maybe it's faster to do this by hand:
# stopsrc -p'pid of /usr/sbin/lpd'
# rmitab "lpd"
Now delete all print queues (managed by qdaemon) defined on your
system. You can use SMIT for this or the commands
{mk,ch,rm}que, {mk,ch,rm}quedev,
{mk,ch,rm}virprt. The SMIT fast path is smit
rmpq.
To start the new lpd at system startup you have to add
an entry to /etc/inittab:
# mkitab "lpd:2:once:/full/path/lpd"
Some work has to be done if have have a local printer attached to
your workstation. You have to create a device file like
/dev/lp0. The SMIT fast path for this is smit
mkdev. Choose Printer/Plotter and then
Printer/Plotter Devices. Now Add a
Printer/Plotter. To create a parallel
printer device select the following:
Plotter type: opp Other parallel printer
Printer/Plotter Interface: parallel
Parent Adapter: ppa0 Available
Now define the characteristics of the device:
Port Number: p
(p is for parallel).
Go to the field
Send all characters to printer UNMODIFIED no
and select yes! We have had a lot of trouble with
no. This is very important! Expect erroneous output if
you choose no. If you have already created a device
file, change the characteristics! SMIT's fast path is smit
chdev.
Finally remove all AIX printing commands like qprt,
lp, cancel, lpr,
lprm. You will find a lot of them in
/usr/bin. Do not remove enq and friends if
you want to use the general queueing facility.
Now you can start your new lpd.
Netatalk is used to communicate from TCP/IP to AppleTalk printers and vice versa. The Netatalk distribution FAQ is at: http://www.umich.edu/~rsug/netatalk. Also, The University of Melbourne web site http://www.cs.mu.oz.au/appletalk/ has additional tutorial and installation information.
After you have installed and gotten netatalk working, you can use the following AppleTalk configuration file to print from a Macintosh to an LPRng printer.
Your 32 Character Printer Name:\
:pr=|/your/path/to/lpr -Pprintername
:ppd=/your/path/to/ppd/files/yourprinter.ppd